Javascript-форум (https://javascript.ru/forum/)
-   Оффтопик (https://javascript.ru/forum/offtopic/)
-   -   Обсуждений тред (https://javascript.ru/forum/offtopic/47364-obsuzhdenijj-tred.html)

l-liava-l 05.12.2015 18:01

Цитата:

l-liava-l, он мне говорил, что предыдущий человек уже разрабатывал данный скрипт, но не смог его сделать, а предоплату так и не вернул.
Я предоплату просить не стал, так как на 100% уверен не был, ибо основной работы много + учёба. Да и чёрт с этими деньгами, нервы дороже.
Была у меня недавно история похожая. Есть небольшая команда плиточников. В сентябре позвонил какой-то мужик, хотел чтобы ему уложили много квадратных метров. Съездил прораб, все осмотрел, сказал что работы дней на 8 и выкатил ценник примерно в 40к. Мужик очень жаловался что его все кидают, электрики кинули еще кто-то кинул, а он сам хирург и вообще не понимает как так можно.

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

С тех кто ноет что у них все плохо и все их кидают нужно брать 100% предоплату.
А то мне кажется тот мужик себе дом благодаря таким лохам как мы построил.

trikadin 06.12.2015 07:23

Короче, пока ждал отзывов -- успел перейти на шестой бабель сам. В общем-то, всё оказалось совсем неплохо, на мой взгляд -- даже лучше, чем было. Например, если мне раньше руками приходилось по табличке заносить в блеклист бабеля ненужные для ноды (особенно новой) трансформеры, то сейчас просто ставлю готовый пресет. Единственное -- не понимаю, зачем его назвали "node5" -- новая версия ноды появится быстро, а название поменять сложновато. Было бы "node-last", лучше. Но это мелочи. Ещё, конечно, поставил себе пресет stage-0, из отдельных плагинов пришлось ставить только flow-strip-types, что логично. Всем рекомендую вот эту статью -- меня перейти стимульнула именно она.

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

Меня, поскольку я ленивый (а обновил бабель на основном проекте, каюсь, и откатываться было лень, а декораторов там хватает), эта проблема вынудила искать альтернативное решение. К счастью, оказалось, что какой-то добрый человек сделал плагин для поддержки текущей версии (legacy, лол) декораторов. Так что, в целом, считаю переезд на бабель 6 успешным.

Конфиг для сборки серверной части под пятую ноду выглядит так:

{
  plugins: [
    'transform-flow-strip-types',
    'transform-decorators-legacy'
  ],
  presets: ['es2015-node5', 'stage-0']
}

cyber 08.12.2015 13:35

Юзаю webpack.optimize.UglifyJsPlugin и после минимализации он такую строку
module.exports = "<span class=\"quick-search-shortcut\"><i class=\"icon-loupe\"></i></span>\n";

превращает в такую
module.exports = "<span class=quick-search-shortcut><i class=icon-loupe></i></span>";

пробывал с разными параметрами и без них, нефига...

Erolast 08.12.2015 14:57

А в чем проблема-то? В HTML5 аттрибуты без кавычек полностью валидны.

cyber 08.12.2015 15:04

Erolast,в том что у нас код ламается :|
Точнее одна либа, которая нужна..
и на сколько я понял это баг, а не фига, потому что если вкинуть только этот код, то все хорошо

nerv_ 08.12.2015 19:39

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

cyber 09.12.2015 00:46

nerv_, это баг, там нужно добавить флаг
html-loader?minimize=false

Цитата:

Сообщение от nerv_
Если не поможет, добро пожаловать в документацию.

Угу, я пол дня искал там в итоге оказалась проблема где то на стыке uglify и html-loader

trikadin 09.12.2015 20:22

Цитата:

Сообщение от cyber
nerv_, это баг, там нужно добавить флаг

Это не баг О_о Логично, что при включенном minimize-режиме жмется html (вебпак же на этом весь построен -- всё конвертится в JS, поэтому и настройка для всего как для JS).

cyber 09.12.2015 21:19

trikadin , не вижунечего логичного что он жмется только если использовать uglify и кто вообще такие опции включает по умолчанию :|

trikadin 10.12.2015 02:19

cyber, эта опция включена, если ты используешь плагин вебпака UglifyJSPlugin. Поскольку вебпак сделан так, чтобы всё превращалось в JS, то достаточно логично, что вместе с обычным JS'ом жмётся и всё то, что он импортит. CSS-лоадеры тоже так делают, посмотри.

А либу, которая пытается работать с html как с текстом, при этом не умеет в атрибуты без кавычек -- не жалко.

cyber 10.12.2015 14:08

Цитата:

Сообщение от trikadin
А либу, которая пытается работать с html как с текстом, при этом не умеет в атрибуты без кавычек -- не жалко.

Я эту либу в принцыпе в гробу видал, где ей и место это еще то редкое г*** (не когда не юзайте их продукты http://www.telerik.com/kendo-ui).
Но нету выбора в данный момент, много к ней привязано

cyber 11.12.2015 11:12

Почему babel не дает сделать что то такое ( к примеру) ради интереса хотел расширить объект стандартного класса

так можно

class t{
	constructor(){

  }
}

t.prototype =  new DOMParser();


так нет

var p = new DOMParser();
class t extends p {
	constructor(){

  }
}

trikadin 11.12.2015 12:33

cyber, потому что надо

class t extends DOMParser {
  constructor(){
    super(...arguments); 
  }
}

cyber 11.12.2015 12:44

trikadin,пробывал уже , в хроме работает, но через Babel нет
"use strict";
class t extends DOMParser {
  constructor(){
    super(...arguments); 
  }
}
var s = new t;
console.log(s);

kobezzza 11.12.2015 13:22

Потому что наследование от нативных классов хрен сделаешь полифилами.

cyber 11.12.2015 13:27

kobezzza, эм почему нельзя вызвать функцию DOMParser с параметрами из super, сделать частичную поддержку

kobezzza 11.12.2015 13:40

Цитата:

Сообщение от cyber (Сообщение 399586)
kobezzza, эм почему нельзя вызвать функцию DOMParser с параметрами из super, сделать частичную поддержку

Ну видимо есть сложности, задай этот вопрос на трекере бабеля.

ruslan_mart 14.12.2015 22:21

Кто-нибудь может подсказать, с какой версии FF стал поддерживать position: relative для display: table-cell? Может уже нет смысла оборачивать элементы в дополнительный div?

pnpquest 14.12.2015 22:33

Цитата:

Сообщение от kobezzza
Потому что наследование от нативных классов хрен сделаешь полифилами.

Сделаешь

pnpquest 14.12.2015 22:38

Цитата:

Сообщение от cyber
t.prototype =  new DOMParser();

Кстати, нахрен ты от экземпляра пытаешься наследоваться?

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

ruslan_mart 14.12.2015 23:07

pnpquest, на классах писать гораздо удобнее, чем на прототипах. Там и наследование нормальное, приватные данные, super и многое другое. Да и возможностей больше. Это конечно всё на прототипах тоже можно, но жутко неудобно.

В общем, когда модули/плагины писать будешь - поймёшь. :)

Вот как я реализовываю приватные функции и переменные на прототипах:

!function(window) {

    var Private = {
        foo: 'bar',
        test: function() {
            return Private.foo + '!!!';
        }
    };

    window.MyClass = function() {
        this.fooBar = Private.test.call(this);
    };

}(window);


И как это можно написать на классах:

Class MyClass {

    private var foo:String = 'bar';
    private function test():void {
         return this.foo;
    }

    public function MyClass() {
         this.fooBar = this.test();
    }
}


P.S.: синтаксис классов на JS точно не знаю какой, так как не писал ещё, поэтому пример из AS3.

pnpquest 14.12.2015 23:25

Цитата:

Сообщение от Ruslan_xDD
Вот как я реализовываю приватные функции и переменные на прототипах:

ты написал обычное замыкание, только через жопу, примерно вот это
(function() {
    var Private = {
        foo: 'bar',
        test: function() {
            return Private.foo + '!!!';
        }
    };
   MyClass = function() {
       fooBar = Private.test()
    };
}()

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

pnpquest 14.12.2015 23:27

Цитата:

Сообщение от Ruslan_xDD
на прототипах:

и прототипов никаких в твоем коде нет

pnpquest 14.12.2015 23:30

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

trikadin 15.12.2015 00:11

Пользователь pnpquest забанен, за то что он foo
 
Народ, который тут сидит. Есть у нас на форуме такой товарищ под кодовым именем "foo". Этот товарищ отличается низким уровнем знания JS, неоправданно высоким ЧСВ и при этом абсолютной неспособностью к адекватному общению, проще говоря -- неадекват. Как следствие, он является персоной нон грата на форуме. Однако, в силу своей неадекватности, он регулярно пытается сюда зачем-то влезть, каждый раз ведя себя неадекватно, за что и бывает регулярно забанен. Проблема в том, что модераторов на все темы не хватает, и иногда лаг между его появлением и неизбежным баном бывает достаточно большим. Поэтому, я прошу вас сообщать о появлении неадекватных персонажей вот в эту тему с припиской "неадекват", особенно если ник персонажа похож на что-то из этого списка (это все ники foo за всё время).
  • bom-bom
  • dkstra
  • drDocument
  • foo
  • forwardonly2015
  • freee
  • fuckJS
  • fuckYankee
  • fuckjava
  • govnocoder
  • indeterm
  • jackdempsey2015
  • javaQest
  • kotlov-net
  • krutoy
  • losos100
  • nanaets
  • nbq
  • newKingOfTheBlock
  • newobject
  • newtimebigtime
  • newuser1001
  • nondeterminism
  • nosuchfile
  • nuboquest
  • pb_
  • petya
  • pidorg-from-air
  • pnpquest
  • pornoborets
  • registrant
  • sogoodweather
  • sortarray
  • terminator-101
  • theKingOfJava
  • tysonfury2015
  • vkontaktikapi

ruslan_mart 15.12.2015 00:30

pnpquest, видимо ты не понимаешь всю суть. Вся суть в контексте. Private нужен для того, чтобы ненужные методы не попали наружу.

К примеру:

var a = new MyClass();
a.test; //undefined!!!


test должен быть доступен только внутри, причём, с нужным контекстом. Поэтому мы вызываем методы Private через apply/call/bind, иначе там будет другой контекст.

А то что ты написал - чушь, ещё зачем-то переменную в глобал определил.

Складывается впечатление, что ты вообще не понимаешь для чего нужны классы, да и ничего никогда на них не писал. Просто услышал модное слово "прототипы" и говоришь тут во все темы о них, хотя на деле даже не понимаешь что это.
Как говорится, на словах ты Лев Толстой, а на деле - Лев Толстой.

ruslan_mart 15.12.2015 00:39

trikadin, ещё одного отправил в баню.

ruslan_mart 15.12.2015 12:31

И ещё одного. А он не перестаёт удивлять "орининальностью" своих никнеймов. :haha:

cyber 15.12.2015 15:11

Кто знает интерфейс Serial ATA для hdd, хуже чем Serial 3, типо Serial ATA это более старый?

Deff 15.12.2015 15:16

Я так понял что они все Serial ATA, а цифра - скорострельность
https://ru.wikipedia.org/wiki/SATA

cyber 15.12.2015 15:23

Цитата:

Сообщение от Deff
Я так понял что они все Serial ATA, а цифра - скорострельност

Просто цена как для wd black слишком маленькая, так что походу там 1

Deff 15.12.2015 15:31

cyber,
Нун смотреть свойство шины компа, ибо при работе оперативки на 3 Гигах(к примеру) вряд ли оно поддержит полную скорость 6 Гигов на шине винта ?
Т.е. я понимаю , что оно засинхрячится обмен с памятью на 3 Гигах(даже при максимальной возможности диска 6Гиг), но нун ли переплачивать ?
Т.е., в итоге все сваливается в оперативную память скорость которой не увеличится выше 3х, если ток в расчете на про возможную смену мамки на более производительную
============
У меня, к примеру память в двухтактном режиме максимум 1320Мгц (2Х660мгц)

cyber 15.12.2015 15:42

Deff, у меня изначалльно стоял винт на с Sata 3, но он посыпался
Разница в цене копеечная

Deff 15.12.2015 15:44

cyber,
Ну тут нун рыть в сторону отзывов о надежности-популярности
У мну тошиба лет 6 стоит, с максимумов в 3Гига/cек

cyber 15.12.2015 15:51

Deff, из того что мне говорили то wd надежные диски и долго живут, а серя black мне нравится что там 7200 rpm

trikadin 15.12.2015 16:11

cyber, почему не SSD-то?

cyber 15.12.2015 16:17

trikadin, потому что ssd стоит рядом, у меня они будут сыпатся раз в пол года, при таком использование)
Поэтому у меня ssd и hdd

Deff 15.12.2015 16:18

Ксать мож у тьву скорость у памяти покруче
Посмотри в мануале
Ибо у меня PC4800 (600 мег без разгона, ну и двухтакность =1200 (и разгон небольшой 1320)
==================
А у PC3-16000 - 2000 т.е если есть двухтактный режим - то 4 Гига/cек

http://www.windxp.com.ru/memddr.htm

trikadin 15.12.2015 16:22

cyber, что ты там с бедным SSD'шником делаешь :D

Deff 15.12.2015 16:28

http://www.storelab-rc.ru/sravnenie-nadezhnosti-hdd.htm
http://habrahabr.ru/post/237887/

У мну пару Western Digital накрывалась в течении полутора лет
Забил, перешел на японию


Часовой пояс GMT +3, время: 11:48.