Обновить

Как обучение в ВУЗе изменило мой подход к программированию: написание собственного приложения для моделирования

Уровень сложностиСредний
Время на прочтение12 мин
Охват и читатели7.1K
Всего голосов 2: ↑1 и ↓1+2
Комментарии9

Комментарии 9

Почему именно Zig,а не Rust,С++,Go?

Язык Zig потому что uber alles.

Здесь сыграли дело вкуса и, наверное, максимализм. Я люблю те 3 языка, про которые вы сказали, но я не выбрал их по следующим причина: C++ имеет множество способов решения одной и той же проблемы, что накладывает для меня свои минусы, да и ООП, как таковое я не хотел использовать в данном проекте. Go просто не подходит, потому что в данном проекте мне хочется развивать понимание работы с памятью, а в go это сильно абстрагировано. Rust же в свою очередь просто не хотелось использовать. В общем этот выбор был сделан по большей части из-за вкусовщины, так как все таки важно чтобы разработка своего проекта как бы она не рассматривалась приносила удовольствие

Писать можно статьи, комментарии, письма любимой или другу, а серьезное программное обеспечение для ЭВМ разрабатывается 1в1 как техническое изделие со всеми ему присущими этапами. То есть это давно уже чисто инженерная сфера деятельности, а создание программного кода как один из этапов разработки. Если вы по основной специальности инженер-физик или химик, то максимум что можете сделать, так это для своей конкретной задачи разработать относительно небольшую программу вычислительного характера с простым интерфейсом для ввода данных и вывода результата в графическом виде. То есть то, чему вас учили по вузовскому курсу информатики и программирования. Разработка же серьезных программных комплексов это коллективный труд разных специалистов, измеряемый десятками и сотнями человеко-лет. Класс разработчика определяется не знанием большого кол-ва конкретных языков программирования и IDE, а системным мышлением и практическим опытом разработки серьезного ПО.

Но не всем же разрабатывать серьёзные программные комплексы, часто программируются чисто прикладные вещи, при том часто они могут быть более нужными бизнесу, ликвидными и окупаемыми. Создается ощущение, что вы хотите сказать, что прикладные программы / сайты якобы имеют меньшую ценность, чем большое ПО, но не секрет, что большинство денег крутятся в вебе. Конечно, это все завязано на системное ПО, но сравнивать ценность прикладного и системного ПО просто некорректно, как и некорректно называть прикладного программиста менее компетентным по сравнению с системным. Конечно с последним предложением вопросов нет.

Да, я согласен с этой точкой зрения, возможно я где-то выразил свою позицию не совсем корректно. Это действительно так, каждая ниша по своему важна, но главное, что я хотел донести, это именно изменение амбиций и подхода под влиянием окружающей среды, в моем случае это ВУЗ

Речь идёт не о сравнении сложного и несложного, большого и небольшого программных комплексов, а о едином подходе к их разработке. Даже если вы разрабатываете что-то для себя (а тем более для других), то все равно в одном лице выполняете (проходите) все этапы которые присутствуют при создании больших ПК: анализ требований задачи, разработка модели данных, алгоритма решения, структуры БД, модульной структуры (объектной модели), непосредственно создание программного кода, его тестирование, написание документации. Поэтому цель моего комментария заключается в том, чтобы лишний раз подчеркнуть, что термин "написание приложения, программы", используемый автором статьи, является ни чем иным как упрощением процесса разработки любого программного обеспечения.

Вы правы. Я это и пытался донести, что разработка серьезных продуктов это не просто программирование. Я и не пытался себя возвести в какого-то всезнающего человека, однако мой опыт это не просто ВУЗ, у меня программирование это практически семейное дело, которым я увлекаюсь с лет 14. Статья написана с целью показать возможность изменить свои амбиции и начать делать что-то с новыми красками. Стоит сказать что некоторые ныне серьезные проекты начинались как чьей-то хобби ну то же ядро Линукс, к примеру. Так что да ваша позиция полностью права, но и моя статья доли правды не лишена

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

Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации