Задать вопрос
Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (5)

Наибольший вклад в теги

Все теги (72)

Лучшие ответы пользователя

Все ответы (85)
  • Как перенять объектно-ориентированное мышление?

    tzlom
    @tzlom
    Очень просто.
    Для начала - признайтесь себе что процедурное программирование у вас тоже страдает (иначе бы у вас не было этого вопроса), это не страшно, но с этим тоже надо что-то решать.
    Берёте любой свой процедурный проект (лучше маленький чтобы не застрять в рутине).
    Шаг первый - всё есть функция, поэтому весь код вне функций кладёте в функции, итого у вас получается что вне функций идёт только вызов main() (или как вы её назовёте)
    Второй шаг - функции работают только с тем, что в них передали. Удаляете глобальные переменные.
    Появляется проблема глубокой вложености, т.е. у вас внутри вызова А вызывается Б а в ней В которая хочет переменную из области видимости А, и таких случаев много. Тащить в Б все эти переменные - грустно и печально, поэтому делаем хитрость, каждая функция первым аргументом получает массив неких значений. Правило одно - функции не меняют имена и количество переменных в массиве, только значения.
    Третий шаг - функции должны быть короткими, выносите повторяющийся код в отдельные функции, если в функции используется много переменных - это повод разбить её на несколько меньших.
    Четвёртый шаг - вы уже пишете на ООП. Если 3 шага правильно сделаны, то осталось только оформить это дело согласно новым правилам - первый аргумент-массив это члены класса, соответственно функции использующие одинаковый массив - методы этого класса, прийдётся разобраться с доступом к полям и отдельными зависимостями, но это уже будет просто и понятно когда ты до этого доберёшься.
    Ответ написан
    4 комментария
  • Какой язык программирования выбрать?

    tzlom
    @tzlom
    Ну вы уже поняли что PHP брать нельзя ни в коем случае, а то питонисты и рубисты обидятся, но вообще-то это тоже отличный язык для веба (и самый распространённый, как по количеству установок так и по инфраструктуре что бы там не говорили).
    Вообще как я посмотрю шаг от сисадмина до программиста это большой и трудный шаг, не у всех получается и не всегда это нравится, поэтому тут вопрос в том был ли у вас какой-нибудь бекграунд серьёзного программирования вообще (да, вы сисадмин и наверняка писали скрипты, но это обычно не то что делает программист, хотя и выглядит так же). Если не был и вы не разбираетесь как работает веб ( а это иметь чёткое представление о том что такое и как оно вместе работает: nginx/apache, cgi ,HTTP, браузер, HTML ,AJAX) то возможно стоит начать не сразу с веб разработки а с программирования вообще.
    Ответ написан
    1 комментарий
  • Посоветуйте CMS

    tzlom
    @tzlom
    joomla — быстро и паршиво, куча говнокода в расширениях, но работает вполне порядочно
    Ответ написан
    Комментировать
  • Разобраться со слабыми сторонами C++?

    tzlom
    @tzlom
    Слабая сторона С++ — ООП, потому что его нет
    всё остальное это множество граблей для людей не понимающих как работает компьютер и/или С++, я сомневаюсь что это действительно проблемы языка
    Ответ написан
    3 комментария
  • ZX Spectrum + *nix

    tzlom
    @tzlom
    нужно — нет, реалии таковы что и спеки есть у единиц (эмуляторы не в счёт)
    интересно — весьма, процесс нетривиальный и там может быть много неожиданных решений и подходов
    так что если хотите — дерзайте, но не надейтесь что это будут юзать, просто скажут «вау, круто»
    Ответ написан
    2 комментария

Лучшие вопросы пользователя

Все вопросы (2)