Skip to content

Instantly share code, notes, and snippets.

View solbianca's full-sized avatar

Alexander Fedorov solbianca

  • Russia, Krasnoyarsk
View GitHub Profile

Калькулятор

Реализовать класс калькулятора который умеет складывать, вычитать, умножать и делить.

class Calculator {
  /**
   * Сложение двух чисел
   */
 public function plus();
@solbianca
solbianca / задача-сайт-testhub.md
Created September 12, 2019 18:35 — forked from codedokode/задача-сайт-testhub.md
Сайт для тестирования TestHub

Задача

Примечание: раньше тут были другие условия задачи. Их можно найти в предыдущих ревизиях этого задания по ссылке https://gist.github.com/codedokode/8733007/e8e73b0255b3d899cb4e17dc9446fe694a8f5f7c

Cделать сайт TestHub, который позволяет создавать и проходить тесты (с вопросами и ответами). Их могут использовать например, преподаватели для проверки знаний студентов, работодатели для отсеивания кандидатов на вакансию, маркетологи для проведения опросов. Далее мы будем называть того, кто создает тесты, экзаменатором, а того, кто сдает, студентом, это лишь условные названия.

  • Предлагаемые технологии: фреймворк (Symfony 3-4 (сложнее, но интереснее), Yii2, Laravel), MySQL или Postgres, шаблонизатор Twig, ORM Doctrine
  • Время выполнения: все зависит от тебя, но я бы смотрел на 4-6 недель
  • Уровень: очень продвинутый новичок
  • Требуемые знания: PHP, MVC, ООП, HTML/CSS, SQL, основы JS
@solbianca
solbianca / Тестирование.md
Created September 12, 2019 18:35 — forked from codedokode/Тестирование.md
Автоматизированное тестирование

Автоматизированное тестирование

Если ты пишешь код, то наверняка его тестируешь. Если речь о какой-то функции, то ты можешь вызывать ее с разными аргументами, и смотреть, что она вернет. Если ты сверстал сайт, то ты открываешь его в браузере, жмешь ссылки и кнопки, проверяешь что все сделано верно. Это называется ручное тестирование — человек проверяет работу программы. Нельзя ли эту задачу переложить на плечи роботов? Обычно можно, и это называется автоматизированное тестирование.

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

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

В больших компаниях может быт

pipelines:
default:
- step:
name: apache
image: php:7.0.20-apache
script:
# install dependancies and mysql client
- apt-get update && apt-get install -y unzip mysql-client libpng-dev libpq-dev
# install xdebug

Необходимо реилизовать сервис, который позволяет пользователям дсотавлять сообщения с использованием разных транспортов, таких как email, web push, telegram bot и тд.

Что должно быть:

  1. АПИ. Мы должны иметь возможность отправить сособщение с как минимум тримя полями (level, title, text). Узнать текущий статус обращения.

АПИ должно реализовывать jsonapi спецификацию.

  1. Страница регистрации и авторизации пользователя. Страница, на которой можно указать какими способами мы хотим получать уведомления. Страница с историей всех полученных уведомлений.
@solbianca
solbianca / Задача на клон rghost.md
Created December 28, 2017 12:44 — forked from codedokode/Задача на клон rghost.md
Задача на клон rghost, ООП и MVC

Задание на ООП и MVC

Для выполнения задания нужно: иметь представление о HTML/CSS (так как мы делаем сайт на фреймворке, а страницы сайтов пишутся на HTML), иметь представление о SQL-запросах или желание в них разобраться (так как мы будем работать с базой данных), иметь представление об ООП (так как все популярные фреймворки используют ООП).

Нужно иметь установленные и настроенные Апач/PHP/MySQL (или денвер/XAMPP но лучше бы установить компоненты по отдельности, дает полезные навыки).

Если есть пробелы в знаниях, у меня есть паста про установку Апача и пара уроков по ООП.

Задание поможет: разобраться в MVC, научиться использовать один из фреймворков, использовать современные подходы к разработке, писать более правильный код.

<?php
namespace Cdn\Libs;
use PDO;
use PDOStatement;
/**
* Class Database
*/
$('.btn-copy-text').on('click', function(event) {
event.preventDefault();
text = $(this).closest('tr').find('.copy-text').text();
textArea = document.createElement('textarea');
textArea.style.position = 'fixed';
textArea.style.top = 0;
textArea.style.left = 0;