Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 22/08/17 в 21:16 |
Фреймворки это конечно хорошо, но порой смотря видос, читая что-либо по теме, начинаешь понимать, что без знания самого языка, а особенно ООП всё не так уж и радужно, как ожидается. Я конечно могу ошибаться, но начинать пользоваться фреймворками, нужно при условии хороших базовых знаний языка и ООП этого языка.
Пишу одну идею и тут как ни крути, но логику т.е. ту идею которая есть в фреймворке не найдешь
Написал примерно 25% одной части всей логики (2000 строк кода) это только функции
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 22/08/17 в 21:37 |
пхпешный ооп я вообще уже перестал понимать. Он сначала был простой и логичный. Потом сверху наворотили огромную прослойку и стало можно делать вот так или так или еще тремя способами. Пиздец просто бывает от кода, в котором использовано все, что доступно к использованию
Фреймворк кстати как раз помогает, когда не знаешь язык. Просто изучаешь методы фреймворка и этого достаточно, а ты разрабатываешь только логику приложения. За тебя как правило уже продумана авторизация, работа с базой, темплейты, роутинг, есть внутренние правила как код оформлять.
Но умея кодить на чистом языке, изучение фреймворка имхо как кошмар. Т.е. фактически повторно учишься программировать с кучей ограничений и нюансов.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
1
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 22/08/17 в 21:41 |
Кстати по поводу базы, есть такая штука как https://redbeanphp.com/ Для работы с базой когда скорость и качество особо не нужны, весьма подходит.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
0
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 22/08/17 в 21:47 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:33), всего редактировалось 1 раз
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 22/08/17 в 21:53 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:34), всего редактировалось 1 раз
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 22/08/17 в 22:01 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:34), всего редактировалось 1 раз
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 23/08/17 в 00:25 |
Oswell E. Spencer писал: | а потом взял и ORM предложил, только какое то старье, у которой последний коммит 20 Aug 2014 |
Ой ну не надо так пиздеть то, даже на сайте ссылка на гитхаб с обновлениями 2017 года на стабильную ветку и на новую бету.
Oswell E. Spencer писал: | а вот это выделить отдельно хотелось бы, т.к. это просто бред!! |
Обоснуй. Ну так чисто откуда возьмутся знания, что вместо $_POST['id'] я должен к примеру указать Yii::$app->request->post('id') ?
А в laravel судя по докам мне вообще целую библиотеку предлагают заюзать "use Illuminate\Http\Request;"
А берем zend и там уже "$this->getRequest()->getPost('id', null);"
Вот так везде свой велосипед, на изучение которого уходит дохрена времени. Если у тебя его дохрена и ты полон сил - вэлком. Иначе это жопа.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
1
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 07:04 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:34), всего редактировалось 1 раз
|
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 08:57 |
Короче говоря, расклад такой. Если я пишу для своих целей или код будет полностью закрытый, т.е. администрировать его буду я и он не будет писаться для заказчика, то вполне допустимо, что я могу писать как хочу и на чем хочу (т.е. фреймворк или всё сам). Кроме этого, если я пишу какую то мелочь, которая вполне себе просто разместится в паре файлов, то умеснее будет писать всё это самому.
А вот если я делаю проект достаточно крупный и при этом это под заказ, то желательно всё это писать на каком-то популярном фреймворке, чтоб если что, любой специалист не тратил на это кучу времени и сходу мог разобраться в проекте.
Но при всем при этом, можно написать свой фреймворк (к примеру создать новый велосипед) и сделать к нему описание
Так что хватит спорить, у вас по сути одна правда, но немного разные взгляды.
|
|
|
|
🎖️🎖
С нами с 25.08.06
Сообщения: 1931
Рейтинг: 284
|
Добавлено: 23/08/17 в 12:32 |
Зачем писать фреймворки для "облегчения работы", если можно написать новые функции в языке программирования?
|
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 15:44 |
Подскажите можно ли так сделать?
function.php
Код: |
<?php
function show($text){
echo $text;
}
?>
|
class.php
Код: |
<?php
require_once 'function.php';
class ClassName{
// тут мне нужно вызвать функцию show();
// как это можно сделать если можно?
}
?>
|
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 15:57 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:34), всего редактировалось 1 раз
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 16:11 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:37), всего редактировалось 1 раз
|
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 16:36 |
Oswell E. Spencer писал: | Можно, но не нужно, пожалуйста.
Код: [развернуть] |
<?php
require_once 'function.php';
class ClassName{
public function run( $text ) {
show($text);
}
}
$instance = new ClassName();
$instance->run('Fuck'); |
Используй traits, они тут как нельзя кстати. |
Благодарю! Выходит функцию которая за пределами класса нужно обернуть другой, чтоб это стал метотд этого класса, я правильно понял? Мне просто давно было интересно, как-то в источниках этого не встречал. Спасибо!
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 23/08/17 в 17:45 |
Lexikon писал: | Мне просто давно было интересно, как-то в источниках этого не встречал. |
Просто так не принято делать. Если так делают, то как правило при переписывании старого кода, когда надо сохранить временно старую функциональность, но новую уже делать на ооп.
Т.е. потом старая функция все равно будет удалена, а ее код перенесен в метод класса, который и будет в дальнейшем везде использоваться.
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
8
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 18:03 |
Просто столкнулся с такой ситуацией, что некоторые функции нужно использовать в нескольких классах, и в каждом классе в эту функцию нужно передавать разные значения.
Т.е. в теории вот так:
function sum($a, $b){
$result = $a+$b;
return $result;
}
class nameOne {
$a = 5;
$b = 6;
$c = 10;
function resultat($c){
$result = sum($a, $b) + $c;
return $result;
}
}
class nameTwo {
$a = 7;
$b = 4;
$c = 15;
$result = sum($a, $b) - $c;
return $result;
}
я пока мельком глянул и не увидел, что при использовании трейта, можно передавать значение в функцию в классе, а лишь вызвать с помощью use
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 23/08/17 в 18:16 |
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
8
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 18:23 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:35), всего редактировалось 1 раз
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 18:24 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:37), всего редактировалось 1 раз
|
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 18:27 |
за это тоже думал первоначально, но думал может еще варианты есть, выходит только так, что впринципе тоже вполне устраивает. Давно заметил, х.з. как в других языках, но в пхп можно по разному делать одну и туже задачу, причем порой можно так вывернуться, что кости хрустеть будут, а на самом деле всё можно решить гораздо проще. Нужно учить матчасть, но порой без практики помнишь, что как-то это можно сделать, а как не помнишь
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 18:29 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:35), всего редактировалось 1 раз
|
|
|
|
Люблю то, что делаю!
С нами с 22.10.06
Сообщения: 5053
Рейтинг: 4418
|
Добавлено: 23/08/17 в 18:34 |
Еёпт!
вон оно что!
$this->sum($this->a, $this->b) + $this->c;
я писал:
$this->sum($a+$b) + $c;
попробую!
|
|
|
|
+
С нами с 09.05.17
Сообщения: 661
Рейтинг: 586
|
Добавлено: 23/08/17 в 18:43 |
....
Последний раз редактировалось: Oswell E. Spencer (08/09/17 в 20:35), всего редактировалось 1 раз
|
|
|
|
🎖️🎖
С нами с 25.08.06
Сообщения: 1931
Рейтинг: 284
|
Добавлено: 23/08/17 в 20:58 |
Lexikon писал: | Давно заметил, х.з. как в других языках, но в пхп можно по разному делать одну и туже задачу, причем порой можно так вывернуться, что кости хрустеть будут, а на самом деле всё можно решить гораздо проще. |
Поэтому меня заинтересовал Пайтон. Там у Пайтона как раз философия делать просто и одинаково без вариантов. И писать читаемый код.
|
|
|
|
www.phpdevs.com
С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105
|
Добавлено: 23/08/17 в 21:19 |
Oswell E. Spencer писал: | ну ты реально отжигаешь, трейты же есть |
Я вот пару раз пересмотрел твой пример, но так и не понял преимущества трейта. Ты описал его как класс и подгрузил внутри класса. С наследованием класса же все точно так же.
В общем для меня х.з. зачем это надо. Даже срач нашел на эту тему https://habrahabr.ru/post/130000/ , там тоже далеко не все врубаются "а нахуя"
|
|
Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.
|
8
|
|
|