0 / 0 / 0
Регистрация: 07.06.2019
Сообщений: 1

Я начинающий веб-программист, с чего мне начать и есть желающие ?!

07.06.2019, 10:48. Показов 2577. Ответов 24
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Хочу занять данной работой, так как меня это интересует и есть много свободного времени для обучения и работы. Самостоятельно пытался все изучить, но из этого вышла только каша большого количества информации, как я считаю для этого мне нужен учитель, а потом может и работодатель. Человек я ответственный и трудолюбивый. Спасибо что прочитали и жду!!!
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
07.06.2019, 10:48
Ответы с готовыми решениями:

С чего начать изучение веб кодинга?
Хочется немного научиться разбираться в веб-программировании - а начать с чего - не знаю. Конечно я все-таки хочу быть мего-кодером не...

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

Начинающий, посоветуйте, с чего начать?
Здравствуйте, давно хотел заняться программированием, и сейчас, со всей серьезностью решил изучать. Помогите решить непростой для меня...

24
1152 / 554 / 320
Регистрация: 21.06.2012
Сообщений: 1,854
09.06.2019, 15:41
Студворк — интернет-сервис помощи студентам
Jodah, либо я что-то не понимаю, либо Вы манипулируете понятиями.
Цитата Сообщение от Jodah Посмотреть сообщение
Понадобится написать 10 функций - будет 10 различных комментариев
а почему эта необходимость пропадает при передаче объекта в функцию? Какая разница, объект мы туда передаем или массив? В любом случае что с массивом, что с объектом, нужно обрабатывать определенные данные которые там находится.

Цитата Сообщение от Jodah Посмотреть сообщение
Мы знаем, что они хотят на вход объект класса Chair, структуру которого можно посмотреть в отдельном файле.
Так тоже самое можно сказать и про массив.

И если нужно добавить параметр, то надо будет лезть в класс или в массив соответственно, а потом в соответствующею функцию. И в чем преимущество?
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
09.06.2019, 17:48
Пока Jodah отдыхает отвечу вам я)

Вы рассуждаете так, как будто объект это просто набор данных.
Например такой:
PHP
1
2
3
4
class User {
    public $first_name;
    public $last_name;
}
Но ведь класс это нечто большее:
1) Содержит не только данные, но логику.
2) Имеет жесткую структуру. Вы точно знаете какие поля/методы там есть.
3) Описывается один раз и в одном месте.
4) Скрывает детали реализации.
И многое другое.

А массив это что? В PHP это совершенно произвольная структура, там может быть что угодно. В большем проекте это ведет к хаосу, рано или поздно вы забудете какие параметры были в массиве, где он создается, где меняется...
0
1152 / 554 / 320
Регистрация: 21.06.2012
Сообщений: 1,854
09.06.2019, 18:10
Опять 25 )
Цитата Сообщение от tarasalk Посмотреть сообщение
рано или поздно вы забудете какие параметры были в массиве
так и с классом такая же история. Почему в класс мы можем заглянуть а в массив нет?

Цитата Сообщение от tarasalk Посмотреть сообщение
где он создается
и с классами такая же беда. И для этого придумали автозагрузчик.

Цитата Сообщение от tarasalk Посмотреть сообщение
Вы рассуждаете так, как будто объект это просто набор данных.
в приведенном примере Jodah он таким и видеться. В его примере в классе никакая логика не зашита, логика обработки возложена на функции. Другое дело если пример для сравнения неудачный.
0
 Аватар для tarasalk
1992 / 1216 / 440
Регистрация: 13.06.2013
Сообщений: 4,115
09.06.2019, 18:29
Цитата Сообщение от sasha0012 Посмотреть сообщение
так и с классом такая же история. Почему в класс мы можем заглянуть а в массив нет?
А куда вы будете заглядывать в случае с массивом?)

Цитата Сообщение от sasha0012 Посмотреть сообщение
и с классами такая же беда. И для этого придумали автозагрузчик.
С классами такой беды нет. Не важно откуда взялся объект, достаточно знать его публичные поля и методы.
С массивом такое не прокатывает, т.к. его данные определяются именно там где он создается, а таких место может быть много.
А автозагрузчик это вообще из другой оперы.

Цитата Сообщение от sasha0012 Посмотреть сообщение
В его примере в классе никакая логика не зашита, логика обработки возложена на функции
Еще как зашита. Он использует описанный мной класс Chair, а тот в свою очередь содержит логику создания(четко два параметра типа string), и логику чтения данных (перезаписать их нельзя).

Цитата Сообщение от sasha0012 Посмотреть сообщение
Другое дело если пример для сравнения неудачный.
Я же кинул вам ссылку на исходники ларавела, все изучили?
Если нужен пример попроще, возьмите встроенный в PHP класс Datetime и попробуйте описать его массивом)
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
09.06.2019, 18:46
Цитата Сообщение от sasha0012 Посмотреть сообщение
а почему эта необходимость пропадает при передаче объекта в функцию?
Потому что в моём примере у объекта всегда один и тот же набор полей. Нет смысла этот набор комментировать, поскольку можно открыть файл с классом и посмотреть структуру. Для наглядности, вариант с массивами:

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
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<?php
/*
    $params должен содержать:
        name
        article
        height
        width
*/
function calc1(array $params)
{
    // ...
    return 1;
}
 
/*
    $params должен содержать:
        width
        length
        weight
        price
*/
function calc2(array $params)
{
    // ...
    return 2;
}
 
/*
    $params должен содержать:
        height
        width
        length
        weight
        price
*/
function calc3(array $params)
{
    // ...
    return 3;
}
 
$chair = [
    'name'    => 'Стул X1',
    'article' => 'ART X1',
    'height'  => 50,   // длина
    'width'   => 70,   // ширина
    'length'  => 150,  // высота
    'weight'  => 3,    // вес
    'price'   => 1500, // цена
];
 
$result1 = calc1($chair);
$result2 = calc2($chair);
$result3 = calc3($chair);
Вариант с классами:

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
38
39
40
41
42
<?php
class Chair
{
    public $name;
    public $article;
    public $height;
    public $width;
    public $length;
    public $weight;
    public $price;
}
 
function calc1(Chair $chair)
{
    // ...
    return 1;
}
 
function calc2(Chair $chair)
{
    // ...
    return 2;
}
 
function calc3(Chair $chair)
{
    // ...
    return 3;
}
 
$chair = new Chair();
$chair->name = 'Стул X1';
$chair->article = 'ART X1';
$chair->height = 50;
$chair->width = 70;
$chair->length = 150;
$chair->weight = 3;
$chair->price = 1500;
 
$result1 = calc1($chair);
$result2 = calc2($chair);
$result3 = calc3($chair);
Цитата Сообщение от sasha0012 Посмотреть сообщение
Какая разница, объект мы туда передаем или массив?
Разница в том, что при получении объекта мы можем быть уверены, что это объект нужного нам класса, т.е. имеет нужные свойства и методы и т.д.

В случае с массивом мы не знаем, правильной ли он структуры, присутствуют ли все необходимые ключи, значит надо писать дополнительные проверки, либо забить и надеяться, что никто не будет передавать массивы неправильной структуры.

Цитата Сообщение от sasha0012 Посмотреть сообщение
В любом случае что с массивом, что с объектом, нужно обрабатывать определенные данные которые там находится.
Верно. Но если разработчик передал объект, то мы точно знаем, что
PHP
1
$object->width
существует. Если массив - мы не знаем, передан ли
PHP
1
$array['width']
или нет.

Цитата Сообщение от sasha0012 Посмотреть сообщение
Так тоже самое можно сказать и про массив.
С одной стороны, 10 функций и каждая принимает 1 объект Chair. С другой стороны, 10 функций и каждая принимает свой различный набор данных. В первом случае система в целом проще.

Цитата Сообщение от sasha0012 Посмотреть сообщение
И в чем преимущество?
Скажем так, в данном рассматриваемом нами случае массив может быть невалидным (неправильной структуры), а объект всегда содержит правильную структуру. Не заполним width - в этом свойстве будет null.

Цитата Сообщение от sasha0012 Посмотреть сообщение
в приведенном примере Jodah он таким и видеться.
В ООП есть множество типовых решений. Некоторые из них подразумевают создание объекта просто как набора значений (можно с какими-нибудь своими методами, можно без).

Также, как можно создать класс с кучей статических методов, который по сути будет являться просто набором функций. Так делать можно, но это не значит, что на этом ООП заканчивается. Это просто один из вариантов использования.

Цитата Сообщение от sasha0012 Посмотреть сообщение
В его примере в классе никакая логика не зашита, логика обработки возложена на функции.
Так и есть, я специально максимально упростил задачу, чтобы в примере фигурировал только объект Chair.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.06.2019, 18:46
Помогаю со студенческими работами здесь

Начинающий программист: с какой программы начать?
Привет всем!Я только начал интересоваться программированием и не знаю с чего мне начать,посоветуйте пожалуйста с какой программы начать?(За...

Начинающий программист ищет работу (не веб и не 1С)
Начинающий программист ищет работу желательно в области системного программирования (WinAPI, драйвера, микроконтроллеры, ОС, может быть...

С чего мне начать
Добрый день товарищи. Вопрос такой. Есть сайт который меня интересует: vapemixer.ru/ Загорелся я сделать подобный сайт своими...

С чего мне начать?
Всем привет. Я новичок в программирование где то 3 дня назад начал читать книгу c++ за 21 день,книга понравилась написал пару...

Начинающий веб-программист ищет простую удалённую работу для практики
Знаю HTML, PHP и CSS, MySQL (JS пока не знаю, но активно изучаю), совершенствуюсь в них. Разбираюсь в готовых движках, могу написать...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
25
Ответ Создать тему
Опции темы

Новые блоги и статьи
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов, содержащихся в реализации модуля. По-умолчанию все члены модуля доступны: module Foo let x = 10 let boo () = printfn "boo" . . .
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции. <!DOCTYPE html> <html lang="ru"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible". . .
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов. import "math" func angleClock(hour int, minutes int) float64 { . . .
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html и его же старой инструкции по установке Lazarus с gtk2. . .
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер. Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
Асинхронный приём данных из COM-порта
Argus19 01.05.2026
Асинхронный приём данных из COM-порта Купил на aliexpress термопринтер QR701. Он оказался странным. Поключил к Arduino Nano. Был очень удивлён. Наотрез отказывается печатать русские буквы. Чтобы. . .
попытка написать игровой сервер на C++
pyirrlicht 29.04.2026
попытка написать игровой сервер на плюсах с открытым бесконечным миром. возможно получится прикрутить интерпретатор питон для кастомизации игровой логики. что есть на текущий момент:. . .
Контроль уникальности выбранного документа-основания при изменении реквизита
Maks 28.04.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРемонтСпецтехники", разработанного в КА2. Задача: уведомлять пользователя, если указанная заявка (документ-основание). . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru