Какие зарплаты сейчас у (Senior) PHP-Entwickler?
Я ни разу не видел гото в своем проекте.
не хочу даже теоретической возможности его снова увидеть, хватит мне миграции с фортрана :)
я сейчас участвую в клинкод-проекте для фаувэ, коллеги оттуда очень серьезно к этому относятся.
Да ладно? "Дас ауто" начали что-то адекватное в ИТ делать? У меня пока что информация о них такая: "набирают ИТшников, но не знают что им от них надо. Сидят, бездельничают на митингах. Молодёжь быстро сваливает"
Беги, беги оттуда! 😁
это у меня как "вызов принят" проходит. Если получится в этом болоте что-то изменить... Тогда я всё смогу! :) Ну а если за два года ничего не изменится, свалю. Деньги платят хорошие, но уж больно противно код смотреть...
Фортран хорош для определенных задач, как и Кобол, зачем с него портировать? :-)
С фортрана переписывали потому что это был единственный блок (целочисленные операции с матрицами), который использовался в бооольшой системе. И он работал на S/390, а голубые его прикрыли. Миграция на новую платформу, да.
А зачем с кобола портировать... Потому что мы говорим кобол, понимаем zOs. А оно не только умерло и воняет, голубые забили на платформу болт уже лет 15 как, только цены повышают, не только фиг найдёшь кого-то кто в ней разбирается, даже молодёжь, готовую не неё обучиться - тоже не найдёшь. В результате всё, что на коболе сейчас работает, живёт только благодаря ещё не ушедшим на пенсию 50+ летним коболистам. И когда они уйдут - всё, тушите
свет, сливайте воду. Всем системам капец. К 2030 платформа (наконец-то!) умрёт окончательно (надеюсь). А кобол на других системах... Не имеет смысла. 1:1 с хоста не смигрируешь, надо переписывать. Или громоздить эмуляторы. Которые тоже хреноватенько работают. И получается что хочешь жить - переписывай.
Я сам дерьмо не пробовал, но многие другие говорят, что невкусно. А я верю! )))
Как и в то, что и из дерьма можно сделать конфетку - ну т.е. написать на Пыхе большую систему, которая будет как-то работать. Просто нужно добавить на ложку дерьма тонну патоки, шоколада и мёда (т.е. обмазаться кучей фреймворков, которые правят недостатки Пыхи) - там оно и растворится.
А как выглядит проект на пыхе из сотен классов?
Обычно можно сделать маленькие PHP файлы, которые можно вызвать по AJAX.
Пример поиск песен, который вызывается по AJAX:
<?php require_once('./config/config.php'); require_once('./libs/core/mod_core.php'); require_once('./libs/core/mod_database.php'); require_once('./libs/core/mod_audio.php'); session_start(); if(!isset($_SESSION['UserID'])) exit; header('Content-Type: application/json'); $arr_files = array(); $arr_files = audio_find('%' . @$_POST['title'] . '%', 0, 10000); die(json_encode($arr_files)); ?>
И как его код миксуется с разметкой?
Пример MVC:
index.php:
<?php require_once('./controller/MainController.php'); // Подключаем контроллер MainController.php $mc = new MainController; // Объект mc - MainController // Если action не существует, или action пустой, то $str_action по умолчанию будет index if(!isset($_REQUEST['action']) || is_null($_REQUEST['action'])) $str_action = 'index'; else $str_action = $_REQUEST['action']; // Иначе считываем action // Обработка action switch($str_action) { case 'index': echo $mc->action_index(); // Если action = index, то вызываем метод из MainController action_index(), и отображаем break; } ?>
Контроллер MainController.php:
<?php require_once('./model/main.php'); function show($filename, $values = NULL) { ob_start(); if(isset($values)) extract($values); include($filename); return ob_get_clean(); } class MainController { public function action_index() { $mm = new MainModel; // Объявляем MainModel $str_view = show('./view/home.php', array('person' => $mm->get_items())); return show('./view/template.php', array('title' => 'Home', 'content' => $str_view)); } } ?>
Модель MainModel.php:
<?php class MainModel { private $arr_items; public function __construct() { $this->arr_items = array('firstname' => 'Anton', 'lastname' => 'Popov', 'gender' => 'M', 'birthday' => '01.05.1980'); } public function get_items() { return $this->arr_items; } } ?>
Шаблон template.php:
<html> <head> <title><?=$title; ?></title> </head> <body> <?=$content; ?> </body> </html>
Вьюшка home.php
<h1>Home</h1> <?php foreach($person as $k => $v): ?> <div><?=$k; ?>=<?=$v; ?></div> <?php endforeach; ?> </table>
Обычно можно сделать маленькие PHP файлы, которые можно вызвать по AJAX.
Пример поиск песен, который вызывается по AJAX:
разве эти все Require once не на сервере обрабатываются? Какой там аякс?
<?php require_once('./config/config.php'); require_once('./libs/core/mod_core.php'); require_once('./libs/core/mod_database.php'); require_once('./libs/core/mod_audio.php'); session_start(); if(!isset($_SESSION['UserID'])) exit; header('Content-Type: application/json'); $arr_files = array(); $arr_files = audio_find('%' . @$_POST['title'] . '%', 0, 10000); die(json_encode($arr_files)); ?>
<?=$title; ?>
Не, зря я с Blazor-Razor сравнил - это скорее древнючий ASP.NET без MVC:
<%#...%>
Но и то в последние версии ASP.NET добавили Razor-синтаксис, где всё через один символ @ вставляется.
Блин, да там ещё хуже - мало такого синтаксиса <?=...?>, так ещё и $ добавлен. В результате - куча закорючек, за которыми кода не видно. Я бы уже за одно это выкинул эту Пыху в помойку. Тут вам не там - в смысле, что не 20 лет назад, когда народ позволял над собой измываться крючкотворством.
не хотеть переучиваться на дерьмовый
Это всё разделение чисто индивидуально. И дело не только в конкретном языке, а в "системе" (IDE, либы и пр.)
Зная хорошо один язык, начать писать что то на другом вопрос достаточно короткого времени. Но вот узнать все нюансы - уже достаточно долго.