
Vitaliy Nameless
21.11.2017
19:02:10
Рыбак рыбака
У меня неправильные ассоциации со словом рыбак..

Erzhigit
22.11.2017
04:29:41
public class A {
public А() { }
}
называние класса и метода одинаковый это норм практика ? или так желательно так не делать?

Roman
22.11.2017
04:35:24

Erzhigit
22.11.2017
04:37:14
Как конструктор?

Google

Roman
22.11.2017
04:37:33
Да

Sparrow
22.11.2017
04:37:41
Не страшно но с одинаковыми именами в своем же коде запутаешься

Roman
22.11.2017
04:37:42
Но опять же, это только мои предположения

Erzhigit
22.11.2017
04:38:16
Кстати этот код я встречал в джаве

Roman
22.11.2017
04:38:46

Erzhigit
22.11.2017
04:39:17
А пхп такое нет кажется?!

Roman
22.11.2017
04:39:26
В ней этот метод по сути конструктор

Erzhigit
22.11.2017
04:39:36

Aleksey
22.11.2017
04:40:43
Только пыха начнет уже ругаться мол юзай контруктор для этого дела. В любом случае, юзать так не стоит, если конечно не кодишь на 5.4

Sparrow
22.11.2017
06:14:59
когда шторм устанавливаешь symfony первым стоит а ларавел третьим к чему бы это))

Erzhigit
22.11.2017
06:28:59
?
yii на каком месте ))

Sparrow
22.11.2017
06:44:52
yii ваще нет))

Google

Sparrow
22.11.2017
06:55:11
у кого есть интересные гисты скидывайте профиль буду благодарен

Леонид
22.11.2017
08:34:11
Там не было метода __construct
Сейчас это не используется

Vitaliy Nameless
22.11.2017
08:42:05
сейчас при отсутствии явно заданого __construct это сработает как конструктор
для обратной совместимости
и вроде даже кинет нотайс или депрекейтед

Константин
22.11.2017
09:06:23
Ищу человека кто может это выполнить: https://docs.google.com/document/d/1UJvefHPG6k2GJASuDgMFUgO4vhRBNAQpvNF5ha_XLOU/edit Пишите в лс!

Pavel
22.11.2017
09:35:14
Хм я как то года 3 назад взялся собрать небольшой майнинговый пул на основе уже имеющегося движка, то ли за 20к то ли за 30к, но оказалось что там работы сильно больше и я потерпел фиаско

Dmitry
22.11.2017
09:36:33
опыт приходит с годами...

Pavel
22.11.2017
09:39:03
Тут мораль - не используйте готовые движки, они отстой :) Сам бы на фреймворке быстрее сделал
А там был классический спагетти без абстракций на основе mysqli

Dmitry
22.11.2017
09:39:59
спагетти без абстракций лучше, чем спагетти с абстракциями...

Pavel
22.11.2017
09:41:38
Согласен, старый тупой код рефакторится проще

Dmitry
22.11.2017
09:43:41
а "быстрее переписать на фреймворке" - это ловушка... потом оказываться, что кучу функционала забыл... хотя есть другая ловушка "переписывать долго, нужно чуток подправить"... потом еще чуток, еще чуток, и уже такое г комом на тебя несется, что... нужно было переписывать ;) в общем, не всегда угадать удается

Pavel
22.11.2017
09:46:55
Там проблема была в том что я по сути писал прокси интерфейс на yii2, который делал запросы по http к 10 копиям готового движка. Все это ужасно тормозило.

Леонид
22.11.2017
10:21:30

Alexandr
22.11.2017
11:41:15
как вы относитесь к глобальным переменным? кто нибудь их использует у себя в коде?

Maksim
22.11.2017
11:42:43
Убиваем их авторов

Andrei
22.11.2017
11:42:54
globals ?
или
class_name::$var?

Google

Dmitry
22.11.2017
11:43:10
а никакой разницы

Andrei
22.11.2017
11:45:14
можно подробностей? почему class_name::$var убог?

Dmitry
22.11.2017
11:45:35
потому что ничем не отличается от globals

Alexandr
22.11.2017
11:46:38
ну, по сути статические свойства классов и глобальные переменные в PHP это разные вещи)

Andrei
22.11.2017
11:46:48
имхо областью видимости так уж точно отличается

Dmitry
22.11.2017
11:47:08
по сути - это как раз одинаковые вещи, разные они по синтаксису

Alexandr
22.11.2017
11:48:37
то есть с register_globals = OFF - class_name::$var не будет работать?

Dmitry
22.11.2017
11:48:54
register_globals вообще о другом

Alexandr
22.11.2017
11:49:28

Dmitry
22.11.2017
11:49:32
нет

Andrei
22.11.2017
11:49:46
удивите меня, получите доступ к
class class_name {
private static $var;
}

Alexandr
22.11.2017
11:50:24
нет
http://php.net/manual/ru/security.globals.php

Dmitry
22.11.2017
11:50:25

Pavel
22.11.2017
11:51:21
Ну вот как раз private static имеет смысл, а public static это все равно что глобальная переменная и лучше такого избегать.

Andrei
22.11.2017
11:52:03

Dmitry
22.11.2017
11:53:08
http://php.net/manual/ru/security.globals.php
register_globals - это о представлении входящих post и get данных в виде переменных, а не в виде массивов, т.е. представление $_GET['a'] - в виде $a. А просто глобальные перменные - это любые переменные в коде, досуп к которым может осуществляеться в любом контексте видимости переменных, т.е. из функций

Pavel
22.11.2017
11:54:40

Google

Dmitry
22.11.2017
11:55:10
аха, еще скажи, хранить инстанс синглтона ;)

Alexandr
22.11.2017
11:55:44
так я хотел узнать, кто нить использует глобальные переменные в своем коде или видели где то такой код?

Maksim
22.11.2017
11:55:59
чёт вы о пустом... а если вспомнить просто плюсы/минусы глобальных переменных?)

Dmitry
22.11.2017
11:56:14

Pavel
22.11.2017
11:56:20

Dmitry
22.11.2017
11:56:33

Pavel
22.11.2017
11:56:38
Видеть - видели. В скриптах 2006 года.

Admin
ERROR: S client not available

Maksim
22.11.2017
11:56:42

Andrei
22.11.2017
11:57:29
глобальные нет, статические иногда да

Pavel
22.11.2017
11:59:11

Maksim
22.11.2017
11:59:56

Dmitry
22.11.2017
12:00:14
ну юзают же синглтон

Maksim
22.11.2017
12:00:16
интерфейсы же в сторону абстрактных классов с чего-то ок) вдруг и с глобалами сработает :)

Dmitry
22.11.2017
12:01:27
ну с того, что интерфейсы придумали для снижения планки входа... равно как и глобалы

Pavel
22.11.2017
12:01:30
Теории в общности не бывает, а вот в конкретных кейсах вполне. Если пишешь простой скрипт на 50 строк то странно их не использовать.

Dmitry
22.11.2017
12:01:36
так что если ты за интерфейсы - то ты за глобалы ;)

Maksim
22.11.2017
12:02:14
угу, расскажем это любителям abstract protected ф-й)

Pavel
22.11.2017
12:02:35
Их плюс в том - что глобальная переменная это просто переменная и ничего больше. Ни класс, ни неймспейс, ни проброска зависимостей - никаких лишних концепций в мозг.

Dmitry
22.11.2017
12:02:53
а аргумент функции? ;)

Google

Maksim
22.11.2017
12:03:14
в 7.2 уже значения иметь не будет)

Dmitry
22.11.2017
12:04:41

Maksim
22.11.2017
12:05:23
плохо смотрел просто, поэтому и не сработала)

Pavel
22.11.2017
12:07:30
Вообще, ведь интерфейсы и абстрактные классы это настолько разные концепции что даже странно как их умудряются сравнивать
И как можно одно заменить другим

Maksim
22.11.2017
12:08:40
ну я тут краем глаза видел холиварчик, мол в очко интерфейсы, только абстрактные классы) либо здесь, либо в соседнем чатике. Не упомню только.
и вот сейчас наброса в стиле "если ты за интерфейсы, то и за глобалы". За всю свою жизнь ничё тупее не слышал)

Pavel
22.11.2017
12:08:42
Интерфейс - это маркер поведения для объекта, коих может быть множество, абстрактный класс - это очень сильный крик об одном конкретном свойстве.

Dmitry
22.11.2017
12:10:21
это у тебя такой стереотип из-за отсуствия множественного наследования ;)

Maksim
22.11.2017
12:11:15
там вон соседи за трейты набрасывают с тайпхинтом, велкам)
к счастью только, что в пхп такое не работает)

Adel
22.11.2017
12:19:54

Maksim
22.11.2017
12:20:35

Dmitry
22.11.2017
12:21:33
множественное наследование просто сложно к реализации и управлении... конфликты всякие, типа ромба и т.п.... а так, приделали костыль в виде "интерфейсов" и рады все ;) а потом приделывают к интерфейсам "дефолтные методы" ;)

Erzhigit
22.11.2017
13:27:09
Есть кто после пхп изучал джава?

Rich
22.11.2017
13:29:25
В чем помощь нужна?

Erzhigit
22.11.2017
13:32:45
Хочу изучить джава после пхп что читать ?
Java8
Руководство для начинающих
Герберт Шилдт
Или от этого же автора Полное руководство читать ?

Pavel
22.11.2017
13:39:50
Если хочешь изучить, то тебе придется читать много и разного. Тут даже впринципе не важно какие книги
Начинаешь читать любую популярную, если видишь что у тебя не идет то откладываешь ее и переходишь к следующей. Вместе с этим много практикуешься.

Erzhigit
22.11.2017
13:41:41
Ок спасибо начну с для начинающих