Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Авторские статьи (https://forum.antichat.xyz/forumdisplay.php?f=31)
-   -   Как стать программистом (https://forum.antichat.xyz/showthread.php?t=39750)

Qwazar 13.05.2007 14:00

Цитата:

Сообщение от _Great_
Против. Далеко не везде

Хз, я пока на вскидку только GameDev могу представить без использования БД. Я же второй вариант расписал для тех, кто хочет быстро начать работать, имхо знание БД очень поможет при принятии на работу и в той или иной степени понадобится.

~Hidrag~ 13.05.2007 23:34

2podkashey Да, пожалуй я неправильно выразился. Я имел ввиду не задумываешся не над задачей а над реализацией. Есстественно перед реализацией все обсасывается что и как, пишутся функционалбные требования и тз. Я имел ввиду предпоследнюю стадию - кодинг. Когда просто садишся и пишешь.

Fen-Omen 14.05.2007 14:22

Цитата:

2) И вообще, если заказчику нужен готовый продукт, то ему, как правило, монопенисуально, на чем написан продукт.
"монопенисуально".... Ловко выразился:) Статья будет полезная...

Red_Red1 15.06.2007 14:29

Не сочтите пост за поднятие не новой темы с целью накрутки счетчика сообщений. Очень зацепила меня эта тема. Особенно спор о том, что важнее знание языка или умение составлять алгоритмы, а так же о том какой язык лучше. Мое мнение спор не должен возникать вообще. Как можно разделять эти два момента в программировании? Как можно решить задачу без самого решения (без алгоритма, без правильного алгоритма), с другой стороны что можно сделать имея решение (алгоритм) и не умея его реализовать, т.е. не зная языка либо плохо зная язык?
Как мы знаем для реализации разных задач, используют разные языки. Желательно чтобы язык соответствовал поставленной цели. Говорить что бейсик тупиковая ветвь навязанная Майкрософтом не совсем корректно если нужно решить проблему например с сортировкой строк в среде Майкрософт офис, VBA прекрасно с этим справиться, так нафига сюда прикручивать асм (хотя наверное можно). Мой учитель (карате) однажды ответил на мой вопрос о том какой стиль лучше такими словами «Побеждает не стиль, побеждает мастер». И он прав нужно быть мастером и задача будет решена с максимальной эффективностью. Ну такие варианты уже для профи, который умеет выбирать инструмент (язык) в зависимости от цели, и при этом прекрасно владеет любым инструментом или быстро его осваивает. Но т.к. статья о том как стать программистом и описывает с чего начать, то тут мое мнение такое. Нужно брать универсальный язык (например - паскаль или его реализация в виде Дельфи. Я сам начинал с qbaсik и он мне не очень пришелся по вкусу так как многие рутинные задачи приходилось делать через ж…) он даст возможность при написании простой программы четко видеть алгоритм, но в тоже время достаточно мощный чтобы можно было делать серьезные разработки в реализации которых без глубоких знаний языка не обойтись. А потом уже все зависит от профиля программиста или решаемой задачи. Когда есть маленький опыт (или большой :) ) уже гораздо легче разобраться с новым языком если это необходимо для поставленной цели. Если вы хотите писать веб-приложение то вам к PHP, Javascript, HTML (хоть ХТМЛ и не язык программирования) и др. А если вы пишите драйвер под новое разработанное вами внешнее устройство на микроконтроллерах (друг помешан на этом), то без ассемблера вам не обойтись, и причем нужно очень глубокое знание языка чтобы и драйвер был рабочим и что бы программа микроконтроллера была не большой т.к. большая просто не влазит в память.
И еще согласен с автором что нужна практика, на голой теории далеко не уедешь, причем нужно решение реальных задач. Я когда садился за ПХП попался на такой штуке: накачал учебников, купил книгу, начитался этого всего, попробовал написать код – ура получается, а потом облом стал в том, что не было конкретной практической задачки. Я полез на сайты фрилансеров, но с моим опытом даже не понял предлагаемой работы. Тогда на помощь пришел друг. Ему нужен был сайт и к нему система управления контентом, вот он мне и ставил задачки, а я пытался их реализовывать на ПХП. Опыт стал заметно расти. (Кстати после изучения основ ПХП, а к нему и мускула, 90% вопросов о скуль-иньекции отпала сама собой так как был понят механизм ее действия. Это я к тому что вы Уважаемые ГУРУ хакеры потому что знаете не только то что НАДО подставить кавычку, а и то ПОЧЕМУ НАДО поставить кавычку, о чем пытаетесь и рассказать нам новичкам. Правда иногда бестолку – «Вот научите меня ламать, чо вы прячете программы и секреты как сломать форум»).

Как подтверждение вышеизложенного хочу поделиться одной задачкой которую я решал в универе. Задача чисто тренировочная и не стоила бы внимания, но у меня с ней произошел интересный случай. Мы решали эту задачу группой на паре. Я у доски разжевывал алгоритм менее заинтересованным в программировании одногруппникам, преподаватель слушала все это с радостной улыбкой на лице (ну хоть кто-то понимает). Задача была решена. Быстренько написана на Паскале и переписана остальными. Листинг был где-то на полторы страницы, в котором четко виден алгоритм какой мы придумали у доски. Пара закончена. А вечерком мы с одногрупником (таким же повернутым на компах) засели за нее еще раз, т.к. пару он прогулял, а я рассказал ему о своем «великом» решении на практической.
Он в это время возился на асме с битами, байтами, ксорами и прочей низкоуровневой лабудой. Так вот он (наверное зациклившись на этой теме) предложил решение задачи основанное на том же алгоритме но была совсем другая реализация на том же языке Паскаль. Через пол часа мы таки выписали решение которое занимало ЧЕТЫРЕ строчки (не считая begin, end), а еще через минут десять осталось ДВЕ строчки (не считая begin, end). В такой форме задачку и алгоритм заложенный в ней было узнать непросто.
Я повторюсь и в том и в другом случае использовался один язык – Паскаль 7.0.
Решение мы на следующий день показали преподу и… больше на пары не ходили.
Так вот этот пример мне показал насколько важно знание языка. Решения и в первом и во втором случае базировались на одном алгоритме, но его (алгоритма) реализации на языке отличались глобально. Вывод алгоритм необходим для решения, но владение инструментом (в данном случае языком программирования) на более высоком уровне приводит к более эффективной реализации алгоритма. (Для нас эффект состоял еще и в том что на пары мы могли больше не приходить :) ).

Извиняюсь за объем текста, но при прочтении темы очень захотелось поделиться своими мыслями с другими.

З.Ы. Кому интересно задачка такая.
На крыше дома, в центре, сидит крыса. На одном из углов крыши появляется кот. Крыса спасаясь от кота бежит в противоположный угол. Смотрит вниз, если внизу есть кот (второй кот), то крыса бежит к соседнему углу (любому) по краю крыши и спускается вниз убегая от котов. Найти маршрут крысы зная расположение двух котов.
Форма дома представляет собой куб вершины которого пронумерованы. Входные данные - номера вершин где расположены коты. Выходные - номера вершин по которым пробежит крыса.
Попробуйте решить эту задачку на паскале в две строчки. Я имею ввиду не кучу операторов записанных в одну длииинную строку.
Ассемблерщики наверное так и решали бы, они наверное не смогут изобрести длинное решение. :)

nerezus 16.06.2007 08:58

Цитата:

Говорить что бейсик тупиковая ветвь навязанная Майкрософтом не совсем корректно
Но это верно. Простой довод: смотри дату последнего релиза.

Цитата:

универсальный язык (например - паскаль
Универсальный язык - это C(с кусочками асма). Или даже чистый асм. Ну возможно и C++. Остальные языки обладают ограничениями. Но я бы не советовал с этих начинать.

Что касается программирования, то еще раз напишу про главное заблуждение: знать я зык и уметь составлять алгоритмы достаточно, чтобы быть программистом.
Так вот, этого нихрена не достаточно. Но необходимо.

Red_Red1 16.06.2007 09:16

Цитата:

Сообщение от nerezus
Что касается программирования, то еще раз напишу про главное заблуждение: знать язык и уметь составлять алгоритмы достаточно, чтобы быть программистом.
Так вот, этого нихрена не достаточно. Но необходимо.

Полностью согласен, я например остановился на НЕОБХОДИМОМ этапе, но очень четко понимаю что этого НЕ ДОСТАТОЧНО!
И вообще можно видеть и уметь держать карандаш в руках, но при этом не обязательно что ты будешь новым Микелянджело :)

Vorlan 18.07.2007 21:19

Я считаю. что нужно знать все и синтаксис и уметь строить алгоритмы, все нужно. Насчет языка, у всех есть свои плюсы и минусы, с этим ничего не поделаешь, но можно знать много по чуть-чуть или один, но так что другие уже не нужны, ты можешь все реализовать в одном.

Bert_HoL 03.09.2007 01:01

Блин а я вобще к сожалению тупой,поступил на программиста,и уже на втором курсе,щитаюсь в группе самый продвинутый,но почитав ваши фразы я понял какие должно быть тупунки в нашей группе,сколько в инет искал полезной инфы для начинающего,пишут или всякий бред что бы поиздеваться или всяким замудрёным языком,если кто небудь мог бы помочь ЛАМЕРУ типо меня я был бы очень признателен и поклонялся бы этому гуру )))

nerezus 03.09.2007 09:08

Помочь можешь тут только ты себе сам

Bert_HoL 03.09.2007 14:53

Конечно же ты прав,у всех и так хвотает своих забот,но мне бы просто указали напровления нужной дороги и я был бы доволен


Время: 01:11