Skip to content

Instantly share code, notes, and snippets.

import React, {PropTypes} from 'react';
function linkedCb() {
this.setState({isApiLoaded: true, isAuthorize: IN.User.isAuthorized()});
}
const sessionStorageKey = 'linkedInLogin';
class LinkedInLogin extends React.Component {
{
"id1": {
"name": "Category_1",
"type": "CATEGORY",
"isRoot": true,
"children": [
"id2",
"id3"
]
},
@RuLeZzz1987
RuLeZzz1987 / code-review-check-list.md
Last active March 8, 2017 13:06
Код ревью

Код

======

  1. Он компилируется? Ищите очевидные ошибки, большинство IDE помогут вам в этом. Непонятно, как такого рода проблемы проскальзывают в завершенный код, но все мы люди, и ошибки случаются. Самые распространенные причины: в последнюю минуту добавляется без тестирования код, который "конечно же ничего не сломает" или разработчик забывает загрузить исправление.
  2. Можете ли вы предвидеть какую-нибудь рантайм-ошибку просто посмотрев на код? Попробуйте воспроизвести ошибку.
  3. Завершена ли фича или исправление бага? Выполнены ли все требования? Есть ли что-то отсутствующее или работающее неправильно?
  4. Это хорошее решение? Это лучшее решение из всех, что были обдуманы? Это больше относится к архитектуре системы и общему подходу решения проблем. Определение "хорошего" и "лучшего" зависит от контекста.

Реализовать youtube search API.

Компоненты

  • строка поиска с кнопкой submit
  • список из 10 роликов
    • Элемент списка содержит миниатюру и название клипа

При клике на ролик открывается страница и воспроизводится клип

url браузера синхронизирован со строкой поиска

// *.d.ts
interface Topology {
options?: object;
}
interface Exchange extends Topology {
exchange: string;
type: string;
bindings: Binding[];
}
class RouterLevel {
constructor(OrchestratorLevel) {
this.OrchestratorLevel = OrchestratorLevel;
}
handle(input) {
try {
return this.OrchestratorLevel.handle(input);
} catch (err) {
const ListItem = ({item}) => (
<div>
<p>{item.foo}</p>
<p>{item.bar}</p>
</div>
)
ListItem.propTypes = {
item: T.shape({
foo: T.string.isRequired,
bar: T.string.isRequired
sv_cheats 1
sv_infinite_ammo 1
mp_do_warmup_offline 1
mp_warmuptime 99999
mp_buytime 99999
mp_buy_anywhere 1
sv_grenade_trajectory 1
bind v noclip
// List.js
List = ({ list }) => (
<ul>
{list.map(listItem =>
<li key={listItem.id}>
<ListItem listItem={listItem} />
</li>
}
</ul>
);
'use strict';
/*
* Задача: пользователь приходит в нелегальный магазин минералов, указывает сколько у него есть денег.
* Вводит сколько он хочет купить минералов. После этого если количество запрошенных товаров соотвествует скидке,
* ему предоставляется скидка: три по цене двух, если количество товара кратно трём или 10%, если количество больше пяти.
* К сумме товара добавляется НДС, в зависимости от указанного штата.
* После совершения покупки, предложить пользователю посетить магазин еще раз
* */