Что я должен изучить после PHP? [закрытый]

Лучшее, которое можно сделать с Python, должно затенить вещи.

  • Полоса весь docstrings
  • Распределяют только скомпилированные файлы .pyc.
  • замораживание это
  • Затеняет Ваши константы в классе/модуле так, чтобы справка (конфигурация) не показывала все

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

Ни одно из этого не будет мешать решительному взломщику демонтировать байт-код или рыть через Ваш API со справкой, dir, и т.д.

12
задан Grant Thomas 19 January 2013 в 19:58
поделиться

16 ответов

В программировании нет «следующего шага»; PHP, как и другие упомянутые вами технологии, - это инструменты, которые мы используем для решения проблем.

Одна полезная вещь, которую вы могли бы сделать, - это посмотреть, как аналогичные проблемы решаются с помощью других технологий: вы, похоже, заинтересованы в разработке веб-приложений, поэтому существуют похожие инструменты, такие как Java / JSP, Ruby / Rails, C # / ASP.NET и так далее. После вашего редактирования это кажется наиболее разумным путем, поскольку такие платформы, как Java и .NET, похоже, являются тем путем, которым движутся организации, и где навыки используются во многих задачах по программированию.

Пройдя по этим маршрутам, вы можете быть заинтересованы в более крупных системах, в которых используются корпоративные функции. Такие вещи, как JSF, Struts или что-то еще - J2EE с EJB используют веб-технологии, но в более корпоративной манере.

I ' Я также предлагаю вам взглянуть на некоторые веб-приложения с открытым исходным кодом, чтобы увидеть, как инструменты, подобные упомянутым вами, используются в более крупных приложениях с большим количеством пользователей. Кто знает, возможно, вы сможете присоединиться и помочь в широко используемом проекте!

22
ответ дан 2 December 2019 в 02:52
поделиться

Only thing I suggest is start learning about software architecture, OOP and design patterns, progamming paradigms.

You can even stick with the tools you already know, just upgrade how you program, learn new and better ways of solving things, see what others and other major frameworks are doing.

1
ответ дан 2 December 2019 в 02:52
поделиться

Намек на «следующий шаг в программировании», на мой взгляд, может быть найден смотреть на учебные планы программ CS в некоторых крупных школах. На вашем месте я бы выбрал что-то совершенно отличное от веб-программирования, просто чтобы расширить свой кругозор.

Если вам 15 лет, я '

3
ответ дан 2 December 2019 в 02:52
поделиться

Разработайте что-нибудь, что может привлечь внимание к языку программирования. Библиотека или файл класса, который может помочь сообществу.

Вы также можете придумать что-нибудь, что можно было бы упростить по сравнению с текущим процессом, который, если вы чувствуете, является трудоемким.

4
ответ дан 2 December 2019 в 02:52
поделиться

That really depends on what you what to accomplish, for example, could you make a complex e-commerce solution from scratch?

So you know how to you php classes and objects?

Perhaps you could learn to use a javascript framework which allows for fancy animations.

My advice is to choose a project that you would be interested in creating, and ideally interested in using too, and see where it takes you.

4
ответ дан 2 December 2019 в 02:52
поделиться

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

http: //en.wikipedia .org / wiki / Design_pattern_ (computer_science)

5
ответ дан 2 December 2019 в 02:52
поделиться

Если вы хотите и дальше создавать веб-сайты, я бы посоветовал вам придерживаться тех же технологий, но узнать о них больше.

На самом деле вы не указали, какой вид работы вы выполняете. я делал это в PHP / HTML / CSS / JavaScript / MySQL, поэтому давать указатели довольно сложно.

Что касается PHP, есть ряд достойных фреймворков, которые вы могли бы изучить, например ] Zend Framework или CakePHP .

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

Также улучшаются ваши навыки работы с PHP. Довольно легко попасть в ловушку написания быстрого, простого и неподдерживаемого спагетти-кода с помощью PHP. Есть всевозможные полезные шаблоны и методы проектирования, которые вы можете подобрать (вышеупомянутые фреймворки или CMS могут дать некоторые подсказки о том, как это делать и как этого не делать). Вы можете изучить такие вещи, как классы / объекты, соответствующие уровни абстракции базы данных (PDO или даже ADO), применение шаблонов проектирования к проектам PHP. Стандартные библиотеки содержат множество интересных функций, которые вы, вероятно, не использовали, а библиотеки PEAR содержат даже больше.

Что касается JavaScript, вы можете для начала изучить такие фреймворки, как JQuery , а затем некоторые из плагинов , которые были созданы на его основе, например JQuery UI .

6
ответ дан 2 December 2019 в 02:52
поделиться

Все, что я могу вам сказать, это мой собственный опыт. Я изучил PHP / HTML / MySQL / Oracle на UNIX около 12 лет назад, и мне понравилась простота использования и то, как вы можете легко объединять сайты (по сравнению с CGI и C). Однако около 6 лет назад я неохотно перешел на «темную сторону», и мне пришлось изучать программирование Windows для своей работы. После ужасного периода изучения «Классического ASP» и VB я погрузился в новую, развивающуюся технологию .NET, в частности, ASP.NET и C #. И я действительно рад, что сделал это.

Изучение «правильного» строго типизированного ООП-языка, такого как C # (или Java), поможет улучшить ваши навыки программирования и сделает вас более дисциплинированным программистом. Если вы сможете изучить платформу .NET, вы расширите свой кругозор, а также возможности трудоустройства.

10
ответ дан 2 December 2019 в 02:52
поделиться

Я многому научился и развил Java после PHP и немного Perl, и очень счастлив, что сделал это. Я понял, что в кругах Java гораздо больше думают и делают упор на построение правильных программных архитектур. Здесь я многое узнал о качестве программного обеспечения, (гибких) процессах разработки, архитектуре.

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

Я также сделал несколько небольших проектов с ruby ​​/ rails и groovy / grails и немного поиграл с python / django - но сейчас возвращаюсь к подходам на основе Java - но ваш опыт может отличаться.

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

4
ответ дан 2 December 2019 в 02:52
поделиться

Почему бы не продолжить работу с PHP?

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

И не последнее. Возможно, из-за своей популярности PHP - живой язык, который продолжает развиваться. Ежедневно появляются новые вещи, модули, новые версии, новые приложения, новые фреймворки, новые проблемы, которые нужно решать с их помощью.

6
ответ дан 2 December 2019 в 02:52
поделиться

Я думаю, вам стоит попробовать кардинально изменить, расширить свой кругозор. Изучите Python , получите pygame и запрограммируйте игру, например тетрис, но это может быть что угодно. Я бы определенно рекомендовал заняться чем-нибудь вне Интернета, потому что это поможет вам увидеть вещи под другим углом.

0
ответ дан 2 December 2019 в 02:52
поделиться

Поскольку вы уже использовали объектно-ориентированную функциональность PHP, следующим шагом я бы предложил Java. Функциональность PHP OO в значительной степени была вдохновлена ​​Java, например, они оба формализовали "ориентированное на интерфейс" программирование с помощью фактической конструкции / ключевого слова: "interface".

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

1
ответ дан 2 December 2019 в 02:52
поделиться

В качестве альтернативы, если вы хотите изучить основы программирования, получите Структура и интерпретация компьютерных программ и взорвите себе голову!

2
ответ дан 2 December 2019 в 02:52
поделиться

This is very subjective, but here goes.

  • It wouldn't hurt to know a very corporate language, like Java, for web development.
  • Learning a framework for it, like Spring MVC, would be very handy. Spring also has concepts like AOP and IOC, worth knowing.
  • Adding in Hibernate for DAO/ORM would be useful.
  • Ruby on Rails (Ruby is the language, Rails is the framework) is another web development track.
  • Sometime during a programming career, you'll need to know one scripting language; Python or Perl.
  • Learn tools like Maven or Ant, Subversion or CVS, and make sure you know how to use an IDE, like Eclipse.
  • If you don't know Linux, that can be fun to play with and useful professionally. Try Ubuntu.
  • From a theory level, learn about Data Structures and Design Patterns.

Data Structures is usually the second university course in computer science, and will almost certainly help your coding. If you build examples to teach yourself this, use a language you don't know yet, so that you gain both knowledge of a new language and knowledge of new theory simultaneously.

There are online references for learning the material. You should be learning about linked lists, trees, and graphs; sorting, searching, and O(n) analysis.

From a hiring manager's point of view, I wouldn't interview anyone without demonstrated knowledge of data structures.

In any case, Project Euler might also help you; it's a group of programming tasks designed to help you learn new languages and have tasks to help you solve new problems.

5
ответ дан 2 December 2019 в 02:52
поделиться

Сначала знайте, что у вас нет никаких ограничений, кроме вашего собственного выхода;)

Если вам нравится писать программы, поищите в Интернете и найдите приложения, которые, по вашему мнению, могут быть улучшите этот 'или' хороший инструмент, но у меня есть другие идеи '.

Затем просто посмотрите на языки, на которых написаны эти приложения, и проведите небольшое исследование трудностей создания такого приложения самостоятельно (например, на stackoverflow .com).

Когда вы нашли какой-то проект, который действительно хотите создать, и выбрали язык, который наиболее подходит для написания этого приложения: Начните изучать этот язык.

Это не всегда важно. найдите конкретный язык, просто найдите проект и настройте его.

0
ответ дан 2 December 2019 в 02:52
поделиться

Ход ваших мыслей верен: программисту важно изучать разные языки. Я бы предложил Ruby и Ruby on Rails.

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

Текущая тенденция многих языков заключается в том, чтобы поместить их «на Rails», то есть реализовать среду MVC. Это было сделано для Javascript, .NET и многих других.

2
ответ дан 2 December 2019 в 02:52
поделиться
Другие вопросы по тегам:

Похожие вопросы: