О профанации программирования - Jaaj.Club
To judge the Authors' Battles, you must log in and reach 15 writer level.

Events

10.02.2025 17:30
📢 Хорошие новости! 📢

Jaaj.Club подписал партнёрское соглашение с ведущими мировыми книжными магазинами! Теперь наши издания доступны на электронных прилавках наших партнёров.

Ищите книги Коллекция Jaaj.Club в магазинах:

Amazon.png
Indigo.png

Litres.png

publishing-logo-ibooks.png

publishing-logo-bt.png

publishing-logo-kobo.png

ridero.png

publishing-logo-smashwords.png


Следите за обновлениями! Список партнёров постоянно пополняется! 🔥📖

Comments

Здравствуйте! Обложки для книг создаются вручную, а не автоматически. Мы обязательно займемся этим в ближайшее время. Благодарим за понимание!
27.03.2025 Jaaj.Club
Здравствуйте! Отправила сюда 3 главы своей новой истории, но почему-то на обложке нет изображения, а внутри глав. Еще у меня вышла законченная история "Королевство за небесной дырой" и у нее тоже нет изображения на обложке. Что случилось?
27.03.2025 Elizaveta3112
Большая машина
25.03.2025 Jaaj.Club
Как их незамечать?Я боюсь!!,
15.02.2025 Гость
Классика! Советую к прочтению из этой же серии - "Книга дневных записей"
08.02.2025 Jaaj.Club

Poll

Что интересней прочитать в новых выпусках Jaaj.Club?


01.03.2024 Рубрика: High tech

О профанации программирования

Автор: vassyap
К сожалению, наш мир не идеален, а задачи, которые ставятся перед программистом, часто напоминают следующее: "напиши то, не знаю что, но чтобы можно было делать вот это, вот то и даже вот это, причем, всё должно работать к завтрашнему утру".
11667 0 0 13 643
О профанации программирования
фото: grad.tamu.edu
Нельзя требовать высокой программистской квалификации от мальчишки, который в 8-м классе пытается создать игровую программу. Бухгалтер, использующий Excel для выполнения рутинных расчётов, - вряд ли ему необходимо понимать механизм работы Windows.

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

К примеру, чего ждать от автора дизассемблера, если он не знает даже, откуда необходимо начинать дизассемблирование РЕ-файла? И ещё: известнейший многотомник Дональда Кнута называется "Искусство программирования". Вдумайтесь – искусство! Но, скорее всего, тут же будет задан встречный вопрос – что, и работу компилятора, при помощи которого создаются исполняемые файлы, нужно представлять до тонкостей? Понимать всё, что происходит внутри компилятора? Знать, где, какой флажок и при каких условиях он устанавливает или сбрасывает?

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

Знакомая ситуация? Выход из неё один – должен существовать какой-то минимум, который обязан знать любой программист. Что-то вроде кандидатского минимума. В состав этого минимума должны, наверное, входить базовые знания программирования (функции, подпрограммы, переходы, циклы, работа с памятью, работа с файлами и т.д.), основные структуры данных (массивы, векторы, списки, хэш-таблицы и их вариации), основы операционных систем, основы web и т. д. и т. п.

О профанации программирования
Фото: careergirls.org

Освоив этот минимум, программист в большинстве случаев будет знать, с чего начать решение поставленной перед ним задачи. Вот в этот момент и можно начинать пользоваться всевозможными визардами. То есть путь программиста должен начинаться с изучения. В какой-то момент спутником программиста может и, наверное, должен стать визард.

Никоим образом программист не должен начинать нелёгкое дело обучения с визарда! Это является одним из лучших способов заставить перестать работать тот агрегат, который находится у нас в голове и называется мозгом.

Кстати, возвращаясь к визарду MFC, – после того, как программист начнет понимать, каким образом работает MFC, визард становится для него весьма и весьма полезным инструментом, сокращающим время разработки на несколько часов. Понимая тот код, который генерируется визардом, программист может оценить степень его надёжности, а не полагаться только на заверения разработчиков MFC о том, что, мол, лучше и надежнее средства нет. Разве не так?

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

О профанации программирования
Фото: codeandhack.com

Есть ещё один нюанс, о котором нельзя не сказать. У некоторых, в основном, очень молодых (речь о возрасте) представителей этой профессии весьма и весьма велика тяга ко всевозможным "взломам" и так далее. Можно допустить это как разновидность интеллектуального развлечения, так сказать, гимнастики для ума.

Но! Большинство руководств по такого рода деятельности написаны примерно так – ставь бряк на такую-то функцию и жди, когда "всплывет" отладчик. В данном случае работа по интеллектуальному наполнению занимает второе место после перетягивания каната. Можно ли говорить о том, что "специалист", начитавшийся подобных руководств, снимет защиту действительно грамотно?

Каждому известны случаи зависания программ, запущенных с CD, которые продаются чуть ли не на каждом углу... Нет, и здесь не обойтись без хотя бы базовых знаний! Кстати, именно базовые знания зачастую позволяют решить проблему "малой кровью", а не ломать программу "через колено", используя отладчик и заменяя в программе несколько байтов. К сожалению, в большинстве школ и вузов использованию вычислительной техники учат достаточно своеобразно.

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

Sign up for our free weekly newsletter

Every week Jaaj.Club publishes many articles, stories and poems. Reading them all is a very difficult task. Subscribing to the newsletter will solve this problem: you will receive similar materials from the site on the selected topic for the last week by email.
Enter your Email
Хотите поднять публикацию в ТОП и разместить её на главной странице?

Почему я решил стать программистом?

Нужен ли диплом программисту?

Такой вопрос возникает при устройстве на работу в солидную компанию, когда в первую очередь у тебя спрашивают твое образование, а уже потом что ты можешь делать. Диплом это своего рода возвышенный статус. Читать далее »

Java против C# - какой из этих языков выбрать новичку

Два фундаментальных языка программирования, которые фактически считаются основой IT-индустрии. Языки, с одной стороны, чрезвычайно похожи друг на друга, а с другой - очень разные. С какого из них лучше начать своё знакомство с программированием? Читать далее »

Как стать успешным разработчиком виртуальной реальности

Виртуальная реальность - это быстрорастущая отрасль с огромным потенциалом, спрос на квалифицированных разработчиков виртуальной реальности также увеличивается. Читать далее »

Программист и спорт понятия несовместимые?

Xочу развенчать миф, что программисты – это бородатые мужички аутичного вида с пивными животами в растянутых свитерах, которые выползают из интернета только в ближайший ларек за пивом. Читать далее »

Клонирование системы: воссоздание идентичности в цифровом мире

Клонирование системы – это как копирование ключа от дома, который позволяет вам получить доступ ко всему, что находится внутри. Однако, вместо физических ключей здесь имеют дело с программными аспектами. Читать далее »

Комментарии

-Комментариев нет-