• Главная
  • » PHP
  • » Яндекс нахваливает python. На самом деле от так хорош?

#1 2014.07.31 16:13

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Яндекс нахваливает python. На самом деле от так хорош?

Наверное каждый слышал что яндекс нахваливает python. Например это видео Какой язык больше по душе программистам.
У меня частая проблема в скорости разработки. Лень, нехватка времени, трудности с проектировкой и т.п.
Сам пока что даже не брался за этот яп. Мне интересно стоит вообще заморачиватся и тратить время на изучения питона. Или лучше это время потратить на более глубокое освоение уже известного мне языка?

Неактивен

#2 2014.07.31 20:14

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6538
Карма: 108
Профиль Веб-сайт

Re: Яндекс нахваливает python. На самом деле от так хорош?

смотря с какой целью тебе это нужно. для веба таки лучше php smile

Неактивен

#3 2014.07.31 23:24

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

Gemorroj написал:

смотря с какой целью тебе это нужно. для веба таки лучше php smile

А можно узнать причину чем лучше? В скорости реакции, устойчивости или может быть вопрос в функциональности?

Неактивен

#4 2014.07.31 23:32

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6538
Карма: 108
Профиль Веб-сайт

Re: Яндекс нахваливает python. На самом деле от так хорош?

вопрос в инфраструктуре. куча написанного кода. + с появлением php 5.3 появились серьезные инструменты типа composer, symfony2 и проч, которые позволяют языку заявлять о себе как о серьезном инструменте, а не языке для домашних страничек.

Неактивен

#5 2014.08.12 23:50

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

Gemorroj написал:

вопрос в инфраструктуре. куча написанного кода. + с появлением php 5.3 появились серьезные инструменты типа composer, symfony2 и проч, которые позволяют языку заявлять о себе как о серьезном инструменте, а не языке для домашних страничек.

Взялся таки за симфони и ты знаешь в нем присутствует очень многое что я изобретал. Например у меня базовый класс Page от него наследуется HTML от этого уже такие как Error, Home и т.д Page имеетс свойства как статус, тип контента, тело и т.д. Вижу в симфони все аналогично и более развито Symfony\Component\HttpFoundation\Response
Так же разработан у меня класс Request где обрабатывается/выравнивается (для сео) запрос. добавлено в него много фишек например очень полезная firstDir,lastDir, secondDir, thirdDir так же есть часть того что уже реализовано в этом же симфони. Все таки изучение сифони будет быстрее чем изобретения подобных велосипедов.
Так же реализованые в ручную логи, базы и т.д.
Думаю отрефакторить некоторые классы и наследовать от симфони.
Так же организована интересная архитектура движка для подгрузки классов/модулей:
start.php

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
<?php
// replace four spaces to tabulation in result page
ob_start(function($page) {
    $page preg_replace('/ {4}/'"\t"$page);
    return $page;
});
 
// start buffering for delete trash
ob_start();
 
// load classes and modules
spl_autoload_register(function ($className) {
    $path __DIR__ '/';
    
    // is there namespaces
    $splitName explode('\\'$className);
    // is namespaces
    if (($c sizeof($splitName)) > 1) {
        $path .= '_MODULES/';
        // recursive recess to path
        for ($i 0$r $c-1$i $r$i++) {
            if ($splitName[$i])
                $path .= $splitName[$i] . '/'
        }
        $path .= $splitName[$r] . '.php';
    } else
        // not nramespaces
        $path .= "_DEF_CLASSES/$className.php";
    include_once $path;
});
/*
set_include_path(get_include_path()
    .PATH_SEPARATOR.__DIR__.'/../_SYSTEM_FUNC');
include_once 'functions.php';
*/
const CHARSET "UTF-8";
mb_internal_encoding(CHARSET);

Неактивен

#6 2014.08.13 10:44

Gemorroj
Administrator
Откуда: Белоруссия
Зарегистрирован: 2007.11.03
Сообщений: 6538
Карма: 108
Профиль Веб-сайт

Re: Яндекс нахваливает python. На самом деле от так хорош?

еще посмотри на бандлы для симфони. стороннего кода тоже написано много, при чем иногда очень интересного.
Добавлено спустя   1 минуту  15 секунд:
а смысла в твоем start.php не много, учитывая, что сейчас есть psr-0 и psr-4, реализованные в composer wink

Неактивен

#7 2014.08.14 09:28

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2278
Карма: 19
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

TLENS, извиняюсь за возможно глупый вопрос: А зачем контролировать namespace. Вроде как PHP сам их находит, не?

Неактивен

#8 2014.08.14 09:58

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

tipsun написал:

TLENS, извиняюсь за возможно глупый вопрос: А зачем контролировать namespace. Вроде как PHP сам их находит, не?

Не понял о чем ты.
А в общем у меня неймспейсы используют модули различные и производится поиск с папки модулей. Если просто объявлен класс тогда он берется из системной папки. Мне по крайней мере так удобнее. Отделил классы движка от классов модулей.
Сам старт инклюдится в файл разруливатель. И это единственный инклюд. Ах да ну инклюдится еще файл функций.

Неактивен

#9 2014.08.14 13:45

tipsun
Moderator
Зарегистрирован: 2009.10.14
Сообщений: 2278
Карма: 19
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

Я вот понимаю если без неймспейса, то искать там то. А вот с неймспейсом зачем так делать, я не понимаю. Наверно я ошибаюсь, но вроде как инклуд $classNameWithNamespace уже сам знает по namespace в какой папке лежит класс. Только начало ему (лоадеру то бишь инклуду) надо показать, что ты и так сделал.

Код:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?php
//// Подача имени класса (с неймспейсом?)
spl_autoload_register(function ($className) {
    $path __DIR__ '/'//// Указываем корень
    
    // is there namespaces
    //// Разбивка на папки, чтоб найти класс (с "\").
    $splitName explode('\\'$className);
    // is namespaces
    if (($c sizeof($splitName)) > 1) {
        $path .= '_MODULES/'//// Указываем "библиотеку"
        // recursive recess to path
        for ($i 0$r $c-1$i $r$i++) {
            if ($splitName[$i])
                $path .= $splitName[$i] . '/'
        }
        $path .= $splitName[$r] . '.php';
    } else
        // not nramespaces
        $path .= "_DEF_CLASSES/$className.php"//// Указываем другую "библиотеку"
    include_once $path//// Инклуд пути, просто (с "/").
});

.
Т.е. должно и так работать, не?:

Код:

1
2
3
4
5
6
7
8
9
10
<?php
spl_autoload_register(function ($className) {
    $path __DIR__ '/';
    if (false != strpos($className'\\')) {
        $path .= '_MODULES/';
    } else {
        $path .= '_DEF_CLASSES/';
    }
    include_once $path $className '.php';
});

Неактивен

#10 2014.08.14 22:48

TLENS
Moderator
Откуда: Украина
Зарегистрирован: 2009.04.05
Сообщений: 2402
Карма: 14
Профиль

Re: Яндекс нахваливает python. На самом деле от так хорош?

tipsun Я понял о чем ты. Не знал. Иногда нужно заглядывать на маны smile

Неактивен

  • Главная
  • » PHP
  • » Яндекс нахваливает python. На самом деле от так хорош?

Дополнительно

forum.wapinet.ru

PunBB Mod v0.6.1
0.014 s