Обучение программированию: поэтапная разработка, инструменты, материалы и пр. для новичка. Что к чему в мире программирования?
Доброго времени суток. Я студент второго курса одного из столичных ВУЗов, учусь на специальности "прикладная информатика в экономике", что, по сути, является обычным обучением на программиста, и, как повелось в столичных ВУЗах, а, возможно, дело лишь в собственной лени (а осуждать преподавание я не могу в силу отсутствия опыта и незнания альтернатив), но, тем не менее, ничего не знаю о программировании. Два года нас учат программированию на Delphi, была короткая практика об простейших вещах верстки, создание БД в Access. Я описываю это для понимания уровня моих знаний читающими. Повторюсь - я работал ТОЛЬКО в Delphi, и научился рисовать кнопочки и присваивать им процедурки.
Собственно сабж: я ищу ответы на банальнейшие вопросы, о которых не знаю, и так же не знают студенты первого/третьего курса моей специальности. Для наглядности я разобью их на пункты. Поехали:
1. Как строится разработка сайта (поэтапно, начиная с создания рисунка на бумаге/в фотошопе).
2. Разработка сайта. Я понимаю, что, грубо говоря, "картинка" создается с помощью HTML/CSS, понимаю, для чего нужны базы данных и... все. Объясните простым языком или покажите где посмотреть информацию о том, как:
- залить эту "картинку" в интернет;
- как привязать к этой картинке БД;
- с помощью чего разработчик взаимодействует с БД;
- для чего нужен JavaScript;
- для чего нужен PHP;
- для чего нужны Python и Ruby в вебе;
- является ли Python заменой PHP;
- как происходит разработка приложений для веба, ведь, насколько я понял, "нарисовал кнопку - написал процедуру" это фишка Delphi;
- если я не прав в предыдущем вопросе, то как настроить среду разработки и какие вообще есть среды.
3. Является ли Visual Studio альтернативой Delphi или это абсолютно разные вещи. Насколько я знаю, в VS можно работать и разработчику десктопных приложений, и мобильному разработчику, и веб-разработчику, так почему же его не используют повсеместно?
4. Для чего нужны фреймворки и что это такое, опять же, простым языком.
5. Что такое "система контроля версий Git", для чего это нужно и как это работает.
6. Что включает в себя интерфейс веб-программиста (программы, сайты и т.д.)
Прочитав вопросы, становится очевидно, что я заинтересован веб-разработкой, но фактически ничего об этом не знаю. Прошу не закидывать камнями, я устал от отрывочных знаний и хотелось бы хоть примерно представлять себе общую картину веб-разработки. Если, по Вашему мнению, я не упомянул что-то важное, буду рад об этом узнать. Повторюсь, я тотальный новичок и буду счастлив узнать как можно больше информации.
Всем отписавшимся сверху: ну что вы пристали? А слабо попростому ответить что такое гит, что б ребенок понял. Или только бла бла бла можете и посылать книжки учить?
Кстате, автор вопроса, по хорошему нужно МНОГО почитать вам еще в гугле по каждому вопросу.
1) Прототип, потом верстка, потом натягивание на CMS, потом наполнение.
2) Залить картинку в интернет – это значит выложить на хостинг.
Привязать к картинке БД – указать БД в настройках CMS
С помощью языка программирования (php, ruby)
JavaScript нужен для написания кода, которому не требуется перезагрузка страницы. Он выполняется в браузере прямо. PHP нужен для написания кода, для которого нужно перезагрузить страницу. Он выполняется на удаленном сервере.
Питон и Руби - альтернатива PHP
"нарисовал кнопку - написал процедуру" работает и в вебе, просто рисуете вы и пишете на других языках.
2. Я не знаю
3.Фреймворк позволяет программировать быстрее, за счет того, что многие возможности он преподносит на блюдечке и их не нужно писать самому часами.
4. Git.. гит... Гит позволяет экспериментировать в программировании. Можно сделать классную прогу. Сохраниться с помощью гита (как в игре). Потом программировать ее дальше, накосяпорить, все поломать. Понять, что лучше оставить прежний вариант программы, и вернуться к "сейву".
5. IDE (phpstorm например) - в нем пишут код. Локальный сервер (openserver например), он дает пользоваться php на компьютере. Браузер – позволяет смотреть на то, что ты нагородил.
Ваши потуги напрасны.
Это такой тип людей - они будут грызть вам мозг до победного, но сами НИЧЕГО не сделают, чтобы хоть как-то продвинуться.
Вот вы ответили на его вопросы "по простому", а теперь он задаст еще десяток вопросов:
1) Что такое CMS?
2) Что такое хостинг?
3) Так что такое фреймворк? Это какая-то IDE? Как он помогает програмировать быстрее? Он все делает за меня?
4) Непонятно что такое гит. Что значит "сохраниться"? А как это сделать? А что для этого нужно?
5) Что такое локальный сервер? А без локального сервера нельзя пользоваться PHP?
А что ..? А как ... ? А почему ... ?
И так будет до бесконечности. Вы лишь прикормили троля, прекратите.
Да я понятия не имею что за человек написал вопрос. Когда мне надоест, я перестану отвечать. Но елки палки, это ли не признак мастерства, доходчиво ответить на сложные вопросы очень простым языком. Я б с интересом почитал ответы на эти вопросы других людей. Для чего нужен фреймворк по-вашему?)
Павел Гоголинский:
>доходчиво ответить на сложные вопросы очень простым языком
Этим должны заниматься специально обученные люди, в специально отведенных местах, за специально обозначенную плату.
Переписывать весь гугл для него - не имеет смысла. Он все равно не оценит.
На каждый из его вопросов гугл даст конкретный ответ.
D' Normalization:
Я лишь преследовал цель узнать обобщенные ответы на свои вопросы систематизировать знания, а в полученных ответах извольте мне разбираться самому. Если вам не интересна эта тема, то что мешало вам просто не отвечать? В этой ситуации тролль - вы, ибо начинаете доказывать отвечающим, что им делать нужно, а что нет. Я, в свою очередь, прочел и обдумал ответ, узнав, что мне следует изучить, за что благодарю автора ответа. И поверьте, я отдаю себе отчет в несомненной пользе для меня этого ответа. Раз вы считаете себя труъ-психологом, разбирающимся в типах людей и понимающих мотивы их поступков, то, будьте добры, игнорировать этот тред.
Charles_Luciano: "бла бла бла, я молодец, вы *леденец*".
>обдумал ответ, узнав, что мне следует изучить
Того же эффекта можно было добиться гораздо быстрее, вбив все свои вопросы в гугл. Но лень(!).
>Раз вы считаете себя труъ-психологом
Не надо быть психологом. Тут каждый день по 10 точно таких же вопросов задают. Вот прям 1 в 1. Только предыстория меняется.
банальнейшие вопросы, о которых не знаю, и так же не знают студенты первого/третьего курса моей специальности.
Это вообще ни о чём не говорит. "Программист"-магистр и тот может на эти вопросы не ответить. Дань нашего образования. Только самообучение.
Про самообучение. Задавать подобные вопросы - гарантия на провал. За вас никто не будет разжёвывать информацию и класть вам в рот. Вы никому не нужны. В интернете существуют ответы на все интересующие вас вопросы. Нужно только уметь их искать. Это один из ключевых навыков в IT.
Второе - читайте книги. Бумажные, электронные, не важно. Можно проходить курсы на Курсере. Вообщем любую информацию, которая будет в конце темы обязательно закреплена практикой.
Третье - как освоите язык, устраивайтесь на работу стажером/джуниором, на полставки или за еду. Там познакомитесь со всем остальным.