1. Мы продолжаем публиковать интересные статьи на тему SocialEngine 4. Одна из статей посвящена правильному выбору сервера для вашей социальной сети, а другая содержит советы по увеличению производительности платформы. Также мы добавили большую статью о пользовательских уровнях. Ознакомиться со статьями вы можете в разделе Вопросы и Ответы SocialEngine 4.
  2. Вам кажется, что ваша версия SocialEngine 4, работает медленно?

    Голосуйте. Пишите свою версию системы, железо на чем работает и количество пользователей. Будем увеличивать производительность :-) Подробнее

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

Пхп практикум

Discussion in 'PHP' started by SpartakuS, Mar 11, 2011.

  1. Gooos абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Скорее всего именно так.
    Под сутью я понимал буквально следующее: как это работает?

    ---------- Сообщение добавлено в 16:13 ---------- Предыдущее сообщение было в 14:58 ----------

    Можно я за троих буду ;)
  2. sewgen User


    Offline
    Message Count:
    259
    Likes Received:
    40
    My version of SE:
    3.20
    Пхп практикум

    +1 :eek:



    P.S.
    Аналогично
    Всегда пользуюсь законом Мэрфи: "Если ничего не получается - почитайте инструкцию"© :confused1:
  3. Red Rabbit Tough member


    Offline
    Message Count:
    898
    Likes Received:
    193
    Можно провести аналогию с играми типа такой. У нас есть игра (php), у нас есть цель/задача, и у нас есть всевозможные детали (функции php). Как бы дальше относительно понятно - нужно собрать детали так, чтобы достигнуть цели. Как это можно сделать наиболее простым путем? Составить логическую структуру работы того, что мы хотим сделать. Во всевозможных книгах сначала дают либо теорию, либо просто материал постфактум, т.е. - работает это так, все запомнили? Хорошо, идем дальше. Это работает, но именно так рождаются говнокодеры. =) Без понимания полной сути происходящего ваше решение с большей долей вероятности будет далеко не оптимальным. Возьмем приложение (любой сложности), точнее попытаемся понять его суть. Код мы рассматривать не будем, а постараемся объяснить как можно достичь результата при этом что-то усвоив для себя, и скорее всего обучаясь на ходу по мере необходимости. Есть несколько подобных методик, но мне нравится с вопросами. Попробуем? :)

    1. Что я хочу?
    Ставим перед собой четкую цель. Представляем как это будет работать. Если нужно - записываем, чтобы не забыть.

    2. Что мне для этого нужно?
    Планируем структуру приложения. В деталях.

    3. Хватит ли моих знаний для выполнения работы?
    Смотрим второй пункт и прикидываем хватит ли существующих знаний для написания продукта. Не хватает - заполняем пробел знаний любым способом, от самоучителя, до банального вопроса на форуме. =)

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

    Сделали первый вариант. Идем дальше.

    4. Можно ли сделать это лучше, не отклоняясь от цели?

    5. Можно ли сделать это проще?
    Такие вопросы обычно приходят тем кто уже не "первый день" кодит, и не хочет заниматься говнокодом. Иногда этим занимаются даже новички...самые пытливые из них.

    6. Как хорошо это работает?
    Стараемся сделать так, чтобы продукт работал как можно более стабильно. Как? Ответственно подойти к пункту 3. Это позволит на 95% снизить количество возможных ошибок.

    7. Можно ли это оптимизировать?

    Продукт готов. Причем именно сейчас, а не между 3 и 4 пунктом. Да, это дольше, иногда намного, но со временем это станет естественным процессом, и будет отнимать гораздо меньше времени, а ваши продукты всегда будут качественными.

    Вот такая вот самая простая схема. Для кого-то это возможно очевидно, но глядя на код который выходит из рук большинства умельцев я сомневаюсь что это для них это так же очевидно. Программист тем и отличается от кодера что знает не только что делать, но и знает (знает = применяет) как. Именно с этого нужно начинать, а не сразу с технических подробностей.

    Но это я так, отвлекся. Вернемся к вопросу как работает php. :) Выше было сказано что это похоже на игру-конструктор, в которой нам дают много деталей, а мы из них собираем готовый продукт. Название и значение деталей нам придется запоминать, с этим ничего не поделаешь. На первых порах справочник будет просто необходим. Как устроено приложение на php? Многие новички путаются где нужно использовать функции, где классы, а где хватит простого (нативного) кода, и как вообще организовать свое приложение или разобраться в другом. Постараемся рассмотреть этот момент.

    Для чего используют функции? Функции предназначены для упрощения выполнения повторяющихся действий, и чтобы не нагромождать код. Например у нас есть код фильтрации текста от мусора и некоторое его преобразование. Каждый раз копировать этот участок кода когда он понадобится неудобно, да и некрасиво. Вот здесь и нужны функции. Что это такое более подробно описано в первых абзацах например здесь. Где использовать функции? Где есть повторяющиеся участки кода.

    Что такое класс? Грубо говоря это просто сборник однотипных функций в одном месте. Например в классе операций с базой данных можно разместить все необходимые функции для работы с бд. Где нужно использовать классы, а где не нужно? Пожалуй самый частый вопрос. Ответ на него достаточно прост - в небольших проектах где расширение не планируется можно использовать функции, в средних и выше проектах лучше использовать классы. Почему лучше? Проще.
    Так же начиная с php 5 в классах появились модификаторы доступа. И вроде как небольшая неуверенная заявка на ООП. Но это как бы другая тема. =)


    Пока всё. Извиняюсь за некую сумбурность выражений и за такое изложение - спать хочу. Ну, может хоть кому-то поможет...хоть чем-то...хоть немного. :)
  4. plast0r Novice member


    Offline
    Message Count:
    143
    Likes Received:
    65
    Хочу поучаствовать! ))
  5. Gooos абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    Тут более менее всё понятно.

    Как планировать структуру не зная матчасти.
    Скорее всего этот пункт должен быть вторым.

    Киньте кто-нибудь ссылку на справочник по PHP синтаксису, подобный хотя-бы этому хтмл справочнику (http://htmlbook.ru).
  6. lem1x Active member


    Offline
    Message Count:
    166
    Likes Received:
    68
    Тоже буду не против участия. В хтмл еще хоть, как можно разобраться, а вот с пхп затруднения. Как начнете - маякните в личку пожалуйста.
  7. Gooos абырвалГ


    Offline
    • Admin
    Message Count:
    2,435
    Likes Received:
    645
    My version of SE:
    3.20
    milyana, lem1x, Gooos, plast0r, sewgen

    Ну вот, пятеро собралось. Можно начинать уже?
  8. SpartakuS Thread starter User


    Offline
    • Знаменитый
    Message Count:
    797
    Likes Received:
    82
  9. dream User


    Offline
    Message Count:
    144
    Likes Received:
    32
    i'm also +1 :)
  10. SpartakuS Thread starter User


    Offline
    • Знаменитый
    Message Count:
    797
    Likes Received:
    82

Share This Page

All rights reserved SocEngine.ru ©