Pull to refresh
51
0
Иво Димитров @DarwinTenk

UX/UI Product Designer

Send message
На основании функций, которые тип реализует, а интерфейс требует?

package main

import "fmt"
import "math"

type geometry interface {
	area() float64
	perim() float64
}
type circle struct {
	radius float64
}
func (c circle) area() float64 {
	return math.Pi * c.radius * c.radius
}
// func (c circle) perim() float64 {
// 	return 2 * math.Pi * c.radius
// }
func measure(g geometry) {
	fmt.Println(g)
	fmt.Println(g.area())
	fmt.Println(g.perim())
}
func main() {
	c := circle{radius: 5}
	measure(c)
}

Компилятор возвращает ошибку:
test.go:29:9: cannot use c (type circle) as type geometry in argument to measure:
circle does not implement geometry (missing perim method)

Научите, как сделать панику в рантайме.
Есть пробная 90-дневная версия Windows 8 для разработчиков: msdn.microsoft.com/en-US/evalcenter/jj554510.aspx
Если в проекте за качество отвечают тестировщики, то качества там не будет. В нормальных проектах за качество отвечают все до единого члены команды и даже заказчик, а тестировщики занимаются тем что качество измеряют и информируют о результатах руководителя и разработчиков.

Запомните! Тестировщики всего лишь измеряют качество продукта!
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
UFO landed and left these words here
Если вкратце: в Joosy я пошел по пути Рельсов в части конвенций. У него в приложении есть четкая структура, он решает конкретные живые проблемы конкретными методами, а не абстрактной цепочкой классов или подходом: «ну парни, мы даем вам свободу». И в итоге оказалось, что это только верхняя часть айсберга. Реальная боль фреймворков заключается в реализации JSON-транспорта _вручную_. Вы как-будто пишете два приложения. Я тоже сначала думал, что это плюс. Но нет, это полная херня – я чувствую, что мы переизобрели архитектуру Client — Application Server — RDBMS. И ведь так и получилось.

На самом же деле, я верю в парадигму активного View. Я воспринимаю все MVC-приложение НЕ как отдельную часть, а просто как View-слой. А View-слой приложения не отделим от общей части. И на то есть много причин, я не буду их все из статьи своей вытаскивать – если интересно можем потом в скайпе потрындеть. И в мой View-слой я хочу передавать данные сделав в контроллере `foo = 'bar'`, а не городя миллион транспортов, декораторов и гребаных обвязок для данных. MVC-фреймворки худо-бедно научились структурировать клиентские приложния. Joosy и Batman действительно хороши в этом. Теперь нам надо научиться четко связывать их с бэкендом, чтобы сохранить все плюсы и элиминировать огромную кучу бойлерплейта, который приходится писать (и это ТАК БЕСИТ) для транспорта.

Приведу пример. У вас есть страницы A и B. При генерации страницы A, фреймворк отдает в браузер бутстрап и сериализованный сет данных для этой страницы. На клиенте она _синхронным JS_ генерируется (это гарантирует индексацию). При переходе на новую страницу, данные прозрачно подтягиваются уже через AJAX. Мы в контроллере на уровне фреймворка определяем тип запроса и отвечаем либо бутстрапом и сериализацией, либо JSON'ом. Сами данные мы собираем из инстанс-переменных контроллера. Транспорт реализуется прозрачно в самом фреймворке. Та-дам! Все плюсы JS-MVC: структурирование кода, сохранение состояния, скорость ответа,… и отсутствие главного минуса – НИКАКИХ изменений в цикле разработки. Мы просто чуть иначе пишем View-слой.
На сколько я понял, теперь если создать сервис и принимать деньги в интернете, на украинскую компанию, то НДС не платится?
Он разобрался со структурой передаваемых данных. Что, Как и Куда Уходит из Девайса и в каком виде приходит. с Подписями сертификатов. а-ля Эмулятор АппСтора.
Если делать (писать приложения) «как правильно» (с перепроверкой receipt на своем сервере), «схема» — НЕ работает. Можно спать спокойно. Паника — Отменяется.
Попробуйте brakemanscanner.org — он отлично находит подобные ошибки в rails-приложения.
На помощь придёт Social analytics от TopsyLabs, который даст возможность загрузить данные за последние 30 дней. Доступ к более ранним твитам для анализа бесплатно получить не удастся, нужно договариваться с руководством Твиттера для открытия доступа к расширенному API. В вашем случае можно парсить результаты на Яндекс.Твиттер и пытаться как-то анализировать нужный запрос. Ещё, как вариант, каждые 24 часа по нужному хештегу или словосочетанию парсить таймлайн и заносить новые обновления в свою БД, дабы обойти ограничение в 30 дней и получить возможность бесплатно анализировать данные за весь период разом.

>>По большому счету, за 160 долларов вы можете получить портативный сканнер-клонер карточек, а софт написать можно и свой.
Тут вот подешевле, правда, не такой портативный.
Мне нравится OlgaKay. Она, кстати, советует скороговорки английские проговаривать.
могу договориться об экспорте вакансий с HR портала средствами API — это новый сервис по поиску работы по всему миру с резюме на разных языках

Information

Rating
Does not participate
Location
Berlin, Berlin, Германия
Date of birth
Registered
Activity