Наверное оффтоп конечно, но в целом думаю некоторое отношение к теме смартлаба имеет, ибо показывает как я пытаюсь решать проблему. Итак, смартлаб у нас весь состоит из php, и я к своему стыду совсем его не знаю. Это плохо и я решил досконально во всем разобраться. Разобраться мне надо и для того, чтобы делать самому какие-то простые формальные вещи (например править шаблоны) и лучше понимать программиста на уровне постановки задач.
Сначала я плотно засел за учебник
PHP 7 в подлиннике. Вроде из того что есть на русском, по отзывам самое лучшее.
200 первых страниц пошло легко. Легко все делается и проверяется. Что нового я примерно узнал?
- PHP довольно прост, книга идет намного легче, чем Изучаем C# — вот там у меня реально кипел мозг
- Однако в отличие от Стилмена, эта книга меньше практикум и больше нудный учебник
- Я осознал что сервак и юзер общаются друг с другом через запросы по протоколу http
- Понял что такое ip, порты, DNS, DNS сервер
- Понял как устроен синтаксис PHP, как он связан с HTML
- Стало понятно как писать программы, как создавать-заполнять-отправлять формы
- Понял как делать вычисления
Возможно книга легко читается именно после C#, так как PHP сам по себе несколько проще… Правда прочтя 200+страниц, стало скучновато… Посмотрел = впереди 466 страниц там всякой теоретической номенклатуры, без создания интересных практичных вещей. То есть чтобы создавать вещи, мне нужно знать как программа общается с СУБД, а это только на 666 странице. Иначе ты никак не сохранишь данные своих программ.
А мне бы хотелось читать-изучать и параллельно практиковать-внедрять, создавая какую-то веб-страницу на php.
Но это не сделать, так как книга начинается с теории, а ответ на вопрос — как это все запустить на серваке идут ровно в конце книги, на 1000 странице.
Для того, чтобы создать самый простой но полезный сайт в интернете, надо:
- выбрать какой-то виртуальный сервер.
- развернуть на сервере PHP. Как это сделать я не знаю. Нужен алгоритм. Судя по тому, как это делается на localhost, это не так сложно.
- запустить сервер mySQL. Этого я тоже не умею. Я даже не понял пока как на локалке его запустить. А на виртуалке тем более.
Как PHP общается с mySQL вроде понятно. Нагуглил типовые запросы. Но как развернуть SQL пока не ясно.
Итак, мне кажется, что все что мне нужно на начальном этапе, чтобы читать книгу и параллельно чото-кодить с пользой, описано в пунктах 1-3.
Насколько я понимаю, вещи там не совсем тривиальные, иначе бы не держали отдельно системных администраторов серверов.
В общем, думаю, вы мне поможете советами How to start:) Тем более я уверен среди вас есть много талантливых людей с соответствующей экспертизой, что приятно.
p.s.
- я пока не знаю что такое nginx и apache
- другие субд (не SQL) и языки (не PHP) просьба пока не предлагать
p.p.s.
- кстати говоря, я думаю, если начать простого и изучить сначала простые вещи, вроде HTML и CSS, а потом постепенно усложнять, освоить JavaScript и PHP ты постепенно учишься разговаривать с машиной на ее языке и со временем и торговых роботов писать научишься. Я кстати знаю несколько передовых hft, которые начинали с того, что делали сайты за деньги.
p.p.p.s.
- последним откровением для меня было то, что база данных, это не просто файл database.db а то, что это некий «сервер». Который чето оперирует с базами данных в соответствии с запросами, и которым ты управляешь командами извне. Мне стыдно в этом признаваться конечно, т.к. у нас по базам данных SQL на ФТК целый практический курс был, который вела Малыхина Галина Федоровна:) В голове вообще не осталось ничего)
Да, для того же пехапе понимать разницу cpu|gpu не особо нужно, но качество кода все равно страдает.
Ну и если ты пишешь хороший код и можешь четко и профессионально описать как он работает, тебя с руками оторвут на рынке.
Но если серьезно, я на этом форуме видел людей в заявляющих что роботов нужно писать на асме на уровне ядра (что бы это значило вообще?). Недавно вот человек утверждал что на определение тренда нужно от 10млрд процессорных операций (опять же не ясно это плохо или хорошо). Вот это все результат изучения программирования сверху вниз, а не снизу вверх.
Школоло детектед.
b34rcava1ry, если Вам начинают втирать такие вещи, то знайте перед вами либо троль, либо школьник, либо идиот.
мой говнокод покупают по ставке 5к за час.
причем объясняешь им все как есть… говоришь что плохо это и неправильно. а они покупают и покупают…
и 8 часов в день я не работаю))
а в остальном все верно…
сейчас в основном моя работа состоит в том, что объяснить своему клиенту, что он не прав и это ему не нужно..
а для эникея у меня другой человек есть
лучше начать с 4, откопать старинную книгу
Точней говоря, там порог входа ниже, как у любого динамического языка, но это не значит, что на нем проще программировать, как раз наоборот, C#(и его близнец — JAVA) создавались с целью совместной корпоративной разработки, и рассчитаны на массового программиста. Там большинство ошибок типизации ловятся на этапе компиляции, поэтому отладка там, как правило, намного проще. Но это сказывается на выразительных возможностях
В принципе, это не обязательно. Вы можете сохранять данные программ в текстовых файлах и работать только через чтение/запись.
Чтобы не натыкаться на грабли, есть такой ресурс: http://www.phptherightway.com/ (там объясняют, например, почему надо использовать pdo драйвер вместо mysql).
На security надо обязательно внимание обратить, чтобы сайт не взломали.
Также есть такой список хороших ресурсов по php: https://github.com/ziadoz/awesome-php
Там есть ссылки на обучающие ресурсы, например такие: https://www.phpschool.io/
И нет причин его не читать.
Вам правильно выше сказали, что 7ку зря начали изучать. СЛ наверняка вертится на 4 или 5 версии пыхи — с нее лучше и начать, без лишних нововаедений ООП и прочей ненужной обычным сайтам мути. А практику лучше всего брать с того же СЛ — попросить знающего развернуть локальную версию у вас на домашнем сервере и на ней практиковаться и с запросами и с шаблонами и с изменением кода пхп. Сделали — посмотрели результат, не заработало — переделали. Это лучший опыт практикума, который не даст ни одна книжка с бессмысленными примерами на уровне 1+2*3.
Гуглите denwer. Там простенький набор как раз для домашней веб-разработки.
По-хорошему, вам придётся написать как минимум свой класс для удобной работы с базой, но этого добра уже навалом в инете. Для начала рекомендую DbSimple.
Вообще, программирование хорошо тем, что оно модульное, и за десятилетия этих модулей в инете завались накопилось. Практически что угодно можно найти бесплатно, остаётся только собрать воедино и подпилить под себя.
Вот например.
ru.wikipedia.org/wiki/%D0%9F%D0%BE%D1%81%D0%B5%D1%82%D0%B8%D1%82%D0%B5%D0%BB%D1%8C_(%D1%88%D0%B0%D0%B1%D0%BB%D0%BE%D0%BD_%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D1%8F)#Python
Они там диспетчеризуют все через ветвления. Это профанация, вся суть извращена, там должна быть прямая диспетчеризация
есть известный инсталлятор — Denwer. Сразу все ставит. и apache и php и mysql парой нажатием клавиш
Да не, апач — это просто сервер. Не важно на какой машине, локальной или удаленной. «на твоем же компьютере» любой сервак можно запускать, апач просто один из многих(но очень популярный)
Вы тут все общаетесь с Тимофеем с высоты прожитых лет =)).
lurkmore.to/Php
Вот это, например:
Это о чем вообще?
Книгу, конечно не стоит забрасывать. Особенно, если будешь проходить курсы на русских сайтах. По своему опыту могу сказать, что курсы на той же курсере более замкнутые на себя. То есть, в принципе, тебе для прохожения курса может даже не потребоваться ничего кроме материалов этого курса, что в принципе не плохо, потому что не отвлекает внимание на всякие мелочи.
Кроме Denwer, можно OpenServer. Тоже все вместе апач, php, mysql.
habrahabr.ru/post/137388/
Для изучения PHP ещё бы неплохо знать CSS3, HTML5
Либо вот тут неплохая подборка https://www.youtube.com/playlist?list=PLY4rE9dstrJzujrObAWJGH2kCOLfRExLq
Под бекенд nodejs освойте, под фронтенд рекомендую react+redux.
Так же обязательно освойте npm, git.
Из баз данных mysql (sql), mongodb (nosql)
Поверьте разработчику с более чем 15 летним опытом программирования на php и на куче других языков. Не тратьте время на этот мусор.
Порог входа в php ниже плинтуса, но это очень мнимое преимущество. В php натянули кучу приемов и парадигм из разных языков, они не свойственны пхп и после того как начинаешь изучать другие языки (откуда позаимствовали подходы и парадигмы) становится понятно, насколько это реализовано через жопу в пхп.
Освоить пхп честно говоря большого ума ненужно, но это да же не пол дела. Дальше начнется освоения фреймворков, библиотек, подходов организации кода, подходов организации проектов, ...
Большинство из этих моментов были привнесены в пхп из вне и реализованы в пхп очень инородно и криво.
В общем крайне рекомендую обратить внимание на какой то другой язык, на пример как было сказано кем то выше ruby или python. На худой конец javascript.
Слез с пхп не так давно и перешел полностью на javascript. Не могу нарадоваться. Само собой javascript возможно не лучший из ЯП, но в данный момент крайне распространен как на фронтенде, так и на бекенде.