• Какие есть хорошие программы для проектирования структуры программ?

    Sivkoff
    @Sivkoff
    Web Developer
    Судя по всему, вам нужно что-то похожее на Visual Paradigm.
    Ответ написан
    Комментировать
  • Как "наследовать метод" golang?

    @s_kozlov
    package main
    
    
    import "fmt"
    
    type AnimalIntf interface {
    	Walk() AnimalIntf
    	Say() AnimalIntf
    }
    
    type Animal struct {
    	animal    AnimalIntf
    	Name string
    }
    
    type Rabbit struct {
    	Animal
    }
    
    
    // Animal
    func NewAnimal(name string) *Animal {
    	animal := new(Animal)
    	animal.animal = animal
    	animal.Name = name
    	return animal
    }
    
    //Метод Walk у каждого свой
    func (this *Animal) Walk() AnimalIntf {
    	fmt.Println("I walk", this.Name)
    	return this.animal
    }
    
    //Метод Say общий
    func (this *Animal) Say() AnimalIntf {
    	fmt.Println("Im Animal and my Name is", this.Name)
    	return this.animal
    }
    
    
    // Rabbit
    func NewRabbit(name string) *Rabbit {
    	rabbit := new(Rabbit)
    	rabbit.animal = rabbit
    	rabbit.Name = name
    	return rabbit
    }
    
    //Метод Walk изменяется для Rabbit и работает корректно
    func (this *Rabbit) Walk() AnimalIntf {
    	this.Animal.Walk()
    	fmt.Println("...and Jump")
    	return this.animal
    }
    
    
    func main() {
    
    	animal := NewAnimal("Зверь")
    	animal.Walk().Say().Walk()
    
    	fmt.Println("\n---------------------\n")
    
    	rabbit := NewRabbit("Кроль")
    	rabbit.Walk().Say().Walk()
    
    }

    примерно так, как вариант
    вывод:
    I walk Зверь
    Im Animal and my Name is Зверь
    I walk Зверь
    
    ---------------------
    
    I walk Кроль
    ...and Jump
    Im Animal and my Name is Кроль
    I walk Кроль
    ...and Jump
    Ответ написан
    Комментировать
  • Актуальные JavaScript фреймворки?

    ExtJs
    Ответ написан
    Комментировать
  • Что можно написать на Node.js?

    MarcusAurelius
    @MarcusAurelius Куратор тега Node.js
    автор Impress Application Server для Node.js

    Часто применяется для:

    1. Локальные приложения и утилиты командной строки
    • Сборщики и трансляторы
    • Пакетная обработка и сценарии отложенной обработки
    • Скрипты, CLI (интерфейсы командной строки)
    • Генерация документации, отложенное формирование отчетов
    • Сценарии тестирования для других систем

    2. Серверы
    • Серверы веб-приложений и SPA
    • Серверы и API для мобильных приложений
    • Любые другие веб-API (RPC, JSON, REST)
    • Серверы сообщений и трансляция событий (чаты, игры, интерактив)
    • Заплаты на уже готовые системы, написанные на других языках, для реализации вебсокетов, SSE, лонг-пулинга и т.д., т.е. для затыкания дыр, для решения проблем в узких местах уже работающих систем.

    3. Клиенты
    • Оконные приложения (nw.js, node-webkit)
    • Кравлеры, парсеры и сбор данных

    4. Железо
    • Программирование микроконтроллеров (arduino, espruino, tessel)
    • Промышленная автоматизация

    Редко применяется (но подходит) для:
    • CMS, публикация контента (просто ниша уже занята и в этой задаче нода не дает чего-то принципиально нового или сверх соблазнительного).
    • Массовая электронная коммерция и торговля (не применяется для массовых движков магазинов, но используется отдельными крупными компаниями для торговых и платежных задач в качестве дополнительного средства к уже имеющемуся ПО, по сути закрывает узкие места).

    И плохо подходит:
    • Вычисления и моделирование, со скоростью математических операций нода и JS, как не типизированный язык, не дают хороших показателей
    • Научные приложения (по тем же причинам)
    Ответ написан
    10 комментариев