• Как конфигурация влияет на архитектуру приложения
    0
    ya ponimaju o chem vy govorite. K sojaleniju «zaxvat» features kotoriy obespechivaet NFX
    ne ocheviden v scope takix statei kak zdes, poka s etim frameworkom ne porabotaesh na neskolkix raznix zadachax
    budet ne vse ponyatno. Vy mojete skazat chto eto ploxo. Pust tak. Real'no mnogie veshi
    vyglyadyat ne tak kak dictuet mainstream. Typizazii configa sdelanav NFX no ne tak kak vami ojidaetsya.
    Delo v tom chto config eto kak raz prekrasnoe mesto (takje kak DataAccess) dlya dynamic-like languages.
    To chto tam napisan kod po injekzii dependencies — eto sdelano spezialno, no sut ne v etom (eto voobshe tema drugogo posta).

    tolko-configuraziju otdelno vzyat' nelzya. ya mnogo raz govoril pochemy.

    mojno NFX zelikom t.k on UNISTACK.

    pm>install-package NFX

  • Как конфигурация влияет на архитектуру приложения
    0
    Vy mne predlagaete pisat' config v kajdom projekte svoi s nylya?
    Ya je vam obyasnil chto NFX.Environment.Configuration eto ne parsanie filov a zeliy
    framework, kotoriy imeet okolo 10+ features: macros, variables, recursion, injection etc…

    Smotrim tyt:
    blog.aumcode.com/2013/08/aum-configuration-as-facilitated-by-nfx.html

    Где можно взять пакет для чтения laconic, чтобы я мог в этом убедиться?

    Laconic mojno chitat xot na urovne Lexera xot parsera no zachem?
    vam nujno Configuration a ne Laconic. Laconinc, command args ili XML eto ne vajno — on sam vse poimet.

    smotrite v kod na primere:
    driver program: github.com/aumcode/nfx/blob/master/Source/Tools/gluec/Program.cs
    conf applied to class: github.com/aumcode/nfx/blob/master/Source/NFX/Glue/Tools/GluecCompiler.cs

    Naskolko ya ponyal Leo_gan vzyal primer is proekta SERBENCH
    kotoriy tyt:
    github.com/aumcode/serbench

    vse eti configi mojno napisat na XMLe, configurazija vstroena v NFX Application
    koei i yavlaetsya SERBENCH.

    posmotrite v kod:
    github.com/aumcode/serbench/blob/master/Source/sb/sb.laconf
    etot je file mojete peredelat v XML i prosto pomenyaite extension. syt taje, koda net

  • Как конфигурация влияет на архитектуру приложения
    –1
    ya ne poimu smisla voobshe etogo voprosa. ya otvetil: JSON eto OBJECT notation format.
    Dlya postroeniya ABSTRACTNIX ierarxiy pamyati on neudoben xotya by potomu chto
    on trebyet «key»/value" mapping. Derevo v NFX etogo ne trebuet voobshe.
    Naprimer vy mojete imet xot 100 noudov s odnim i tem je imenem.
    Eto delaetsya legko na XMLe, t.k on format razmetki texta prosto i vse.

    Laconicn udobnee XMLa v razy. Seichas u menya realno ostalos tolko neskolko starix prilojeniy
    gde ispolzyetsa XML — prosto uje davno.

    Esli vam lichno nujen JSON eto vashe pravo, no vy ubedites sami chto isplzovat ego vmesto Laconic formata
    v razy neudobnee. Ya proverial + moi partner proveryal. My daje vybrosili JSONconfig iz NFX t.k ne bylo ni odnoi zadachi.

  • Как конфигурация влияет на архитектуру приложения
    0
    posmotrite, u vas «yahoo» eto string v arraye, a google eto object s property imenem «google.com»
    vas ot etogo ne korobit?

    teper napishite eto na XML (zabudem pro laconic, on yavno mazolit glaza)
    i srazy vse stanet proshe
    <connect>
      <site>http://yahoo.com</site>
      <site name="Google" type="...">http://google.com</site>
    </connect>
    
  • Как конфигурация влияет на архитектуру приложения
    0
    a esli «friend» vstrechaetsya >1 raza podryad?
    group
    {
       friend{}
       friend{}
    }
    


    i teper nado delat array na JSONe, v etom i neudobstvo.
    To pole, to array. JSON eto OBJECT NOTATION format. XML i Laconic eto DATA delimitation format

    v etom vsya razniza
  • Как конфигурация влияет на архитектуру приложения
    0
    CTRL+F «Oslik» — tam primer imenno po etomu.

    Dopustim u vas est attribut «type». Ktoto sverxy predlagal ego ispolzovat. Vopros: kak vyrazit takoe derevo na JSON:

    friend{name=«Ezhik» age=3 type=«CloseFriendConnection»}

    ili takoe:
    connect
    {
    site=http://yahoo.com{}
    site=http://google.com{name=«Google» type=""}
    }
  • Как конфигурация влияет на архитектуру приложения
    0
    posmotrite vishe comment, tam conkretniy primer
  • Как конфигурация влияет на архитектуру приложения
    0
    Laconic nikakogo otnoheniya K JSON ne imeet voobshe.

    Eto format imenno dlya configa. on podderjivaet takie udobnie veshi kak:
    1. bukvalnie stroki a-la C# $" i can span many lines \not escape"
    2. uproshennuju grammatiku bez operatorov «my+va-+-+lue=1 2 2», imena kluchei moigyt tozhe byt strokami
    3. commenti: sngle line, multi line
    4. true hierarchy without root object/array requirements

    i chto samoe glavnoe, chto LACONIC voobshe ne trebuetsya.
    Vy mojete napisat tot-zhe file s extension XML i vse budet rabotat na XMLe

    look, this is NFX config in XML:
    github.com/aumcode/nfx/blob/master/Source/Testing/Manual/WinFormsTest/WinFormsTest.configuration
  • Как конфигурация влияет на архитектуру приложения
    0
    neponyatno pochemy vse zaziklilos na JSON.

    Skajite, pochemy configurazija ne mojet byt' naprimer v baze ili commandnoi stroke ili v Mongo documentax?

    Pochemy configurazija ne mojet «sobiratsya» dynamicheski is raznix fomatov (naprimer v baze polya, v file XML)?

    Vy chto ne ponimaete chto configurazija eto prosto ierarxija imenovanix znacheniy.
    Da mojno ispolzovat JSON kak ODIN IZ formatov, no on ochen neudoben.

    Kstati, kogda menya zakalibal XML, ya reshil ispolzovat JSON i napisal JSONCOnfig za gde-to 15 miunut.
    Potom ya osoznal chto eto ochen neudobno, imenno v svazi s otsutstviem kommentariev
    da i strukturno v JSONE v prinzipe net noudov chistoi ierarxii kotorie est v XMLe tom je

  • Как конфигурация влияет на архитектуру приложения
    –1
    mne kajetsya chto sushestvuet model?
    konechno ona sushestvuet. mnogie veshi configuriruytsya iz XML kotoriy byl napisan esho v 2002 gody.

    a kto vam skazal chto configurazija voobshe imeet kakoe-libo otnoshenie k JSON?

    vot primer configurazii v NFX:

       c:\>dosomething.exe "c:\input.file" "d:\output.file" -compress level=100 method=zip -shadow fast -large
    
          [args ?1="c:\input.file" ?2="c:\output.file"]
            [compress level="100" method="zip"]
            [shadow ?1="fast"]
            [large]
     

    eto odin prosto primer.
    potom vy mojete prosto tak «prisobachit eto v klass:

        [Config]
        public int CompressionLevel....
    

    ..i ne vazhno voobshe dannie prishli iz XML, INI, command args — eto prosto derevo.
    Eto kak raz u vas pochemy-to kasha i tight-coupling mezhdu FORMATOM i soderjimim

    configuraizja — eto derevo v pamyati.
    XML laconic ili yaml — eto voobshe nevazhno.

    A mojet ya xochu derjat eto v SQL servere? pochemu net.

    s kakogo boku tyt JSON? on voobshe dlya etoi zadachi nikak ne podxodit
  • Как конфигурация влияет на архитектуру приложения
    0
    кстати, а где комментарии в JSON?
    конфиг фаил на 300 строчек, из них болше 25% комменты?

    example:
        instrumentation 
        {
            name="Instruments" 
            interval-ms="4395"
            //self-instrumented=true
    		
    	   /*	provider
    		{
    			name="Telemetry Instrumentation Provider"
    			type=$(/gv/types/$instr-nop) 
    		}  */
               
            provider 
            { 
                name="Telemetry Instrumentation Provider"
                type=$(/gv/types/$instr-telemetry) 
                use-log="false"
                receiver-node="sync://127.0.0.1:$(/gv/services/$sync-telemetry)"
            }
        }
    


  • Как конфигурация влияет на архитектуру приложения
    0
    вы даже не прочитали внимательно ответ.
    в JSON невозможно создать ноуд валуе без имени в принципе.

      node=45{} 
    


    в ХМЛ и прочих иерархических форматах запросто.
    ЙСОН это object формат, у него нет корня без аттрибутов
    поэтомы я вас попросил написат на JSON- вы же даже не удосужились вникнуть в проблему —
    в вашем примере будет введен «type» суррогатныи ноуд. А если ноуд с таким именем уже есть?

    вообше поражает что здесь никто не пытается даже прочесть ответ, не говоря о вникании в суть
  • Tестирование сериализаторов под .NET
    0
    Ne zabudte — dostup cherez rekasti pointerov i transformaziju v buffer (byte*) — eto i est «psevdoserializaija» razmazannaya teper po business kody.

    Kak skazal Leo_Gan, vam prodali ne dom a grudu kirpichei :)

    Naprimer:

    myData[«Age»] = 12345;
    a esli v buffere xranitsya v BigEndian, a processor rabotaet v little endian? Eto znachit uje zamedlenie.

    Tak chto nikakix chudes net i byt ne mojet. Skorost «zero-copy» resheniy eto ne skorost «write to stream» — nado meryat' vse i UCHITIVAT
    «nepolnozennost buferov» — nevozmojnost rabotat s etimi dannimi cherez standartnie sredtsva yazika — a znachit eto DTO — a DTO eto govnokod :) (elsi ego mojno izbezhat')

  • Tестирование сериализаторов под .NET
    0
    da imenno,

    eto kak kogda-to xranili v Delphi (naprimer) Dataset v binarnom file na diske. Rows[] — eto byl prosto (byte*)
    kotoriy kastalsya cherez FiedlByName(«ColumnName»).

    Eto ne serializaija. Eto format xraneniya dannix. On ne transparenten dlya raboti s obektami yazika kotorie na to i objects
    chtobi s nimi rabotat (call methods, properties etc...)

  • Как конфигурация влияет на архитектуру приложения
    0
    Why «Type»? Why not «name»? or anything else?

    so how will this look in JSON?

    friend=true
    {
      type="Oslik"
      name="Drug Ezhika"
    }
    
  • Как конфигурация влияет на архитектуру приложения
    0
    ne dumaju chto takoi comparison nujen ili daje vozmojen. ServiceStack ochen malo imeet otnosheniya k NFX.
    Naprimer v NFX net ORM po opredeleniju — eto sovsem drugaja metodologiya.
    Ya ne sporju chto SrviceStack xorosho sdelanniy framework, esho est Castle, Lotka, NSpring i shtuk 10 drugix.
    Vse oni v chem to peresekautysa, gde-to rasxodyatsya.
    NFX voobshe tyt ne podxodit dlya sravneniya, on ne prednaznachen dlya «hire any 25 developers who know whats cool»
    V NFX net ni odnoi «cool» fishki, ni odnogo buzworda.
    Eto tem interesno kto ponimaet kak rabotaet motor vnutri

  • Как конфигурация влияет на архитектуру приложения
    +1
    v tom chto eto ispolzuetsya v desyatkax nest, takix kak ustanoivka programmnogo obespecheniya na servera.
    vy vse pytaetes dokazat chto u vas ne Unistack i vy s etim happy.
    Ya i ne spory

    u vas vyigrish budet togda kogda vy poimete chto pishete odno i tozhe 25 raz v kajdom proekete na 3x yazikax i 10 formatax… vot poka eto ne eknet v grudi — to NFX eto ujasniy framework ot kotorogo tolko odna golovnaja bol
  • Как конфигурация влияет на архитектуру приложения
    0
    Its already there for everything I need.
    If you have XYZ file system then you need to implement it? no?
    others will miraculously self-implement? HDFS? ACFS? GDrive?
  • Как конфигурация влияет на архитектуру приложения
    0
    yes you will gain a lot, because nothing will change but 1 line in config:
    _include{ file="/path/to/your/file" fx{ type=«NFX.IO.SVnFileSystem, NFX.Webl» params{...your connect strings..}}}

    _include{ file="/path/to/your/file" fx{ type=«NFX.IO.GITFileSystem, NFX.GIT» params{...your connect strings..}}}

    btw GIT is not in NFX oper source base, because it was needed only for one closed-source project where GIt is exclusive

  • Как конфигурация влияет на архитектуру приложения
    0
    right, and using C# one can write any software as long as C# runs on a Turing-complete vm :)

    it is all about practicality. In windows you can easily map a «local drive» to some remote virtual FS. So what?
    This is VERY far from being an integrated solution that works 99.9%, like we use SVNFIleSystem — it only has 300 lines of code
    but guess what — it has never ever failed me.
  • Как конфигурация влияет на архитектуру приложения
    +1
    ya razve govoril chto HOCON ujasen? zamette, oni tozhe uzajut non-MS shit :)

    no mne-to on zachem? I have tons of software written and running in production making money…
    If you dont like NFX, thats fine…
    however many people want to know the alternatives to MS stack.
    HOCON is a good one, so is NFX
  • Как конфигурация влияет на архитектуру приложения
    0
    This is irrelevant. In NFX we havd a concept of a FileSystem, back then I supported WEB and local.
    Right now I know a guy uses DropBox.

    An ability to include external files via an injectable file0system provider is a really awesome feature.
    We use it in cluster, where config gets computed from pyramidal tiers of the system (similar idea as ms had with web.configs)
    only we store evrything in SVN wih version control, so the whole clkuster definition is always versioned.

    Vy ziplieetes k slovam ne vnikaja to chto vam po-delu otvechajut. (sorri za broken typing)
  • Tестирование сериализаторов под .NET
    +1
    Flat buffers, CAPTN proto etc… these are not serializers, these are memory managers. You can not call them serializers as you can not use the «standard object» paradigm. In other words, you can not copy an instance of FileStream by just copying memory bytes. sorry for english i have little time to answer now
  • Как конфигурация влияет на архитектуру приложения
    –2
    i saw that. it still does not do (at least I did not find) many things that I need as of 2013 i.e.

    how can I include a file hosted on a DropBox account as one of my conf sub-nodes?
    how can i get a constant value from code in my config?
    how do i structurally merge sub-trees with injectable comparison functors?

    NFX conf existed back in 2003...sorry

  • Как конфигурация влияет на архитектуру приложения
    –2
    youtu.be/reDvhz4RGhA
    It takes 60 minutes to describe the features of config WITHOUT going to details.
    How come config in .NET has 100+ data types yet it can not do SIMPLEST things like including a file from the web.
    If you have ever written anything yourself you know better what kind of pain it is to work with MS configuration.

    The lack of variables — the most rudimentary required thing, makes developers to put «mypath='c:\mydata\myfile'» 25 times in the same config.
  • Как конфигурация влияет на архитектуру приложения
    –3
    what about macros? recursion detection? pluggable env vars rsolvers? reading constants right from code? structural merging of documents with override rules? tree comparisons, loading config files from any FileSystem (i.e. Git, SVN, Amazon, web etc..)? Is this what you are talking about?

  • Как конфигурация влияет на архитектуру приложения
    0
    yes, and this is extremely inconvenient.
    try to convert this to JSON:

    node
    {
    // no-log=true
    server=local{ binding=sync{tcp-window=16k} binding=async{ tcp-window=16k}}
    welcome=$«Hello {0},
    — you have connected to {1}»
    }
  • Пишем LINQ на JavaScript с нуля
    0
    как по мне — так не поменялось ничего вообще со времен кнута и жекстры.
    да компутеры стали в 1000 раз быстрее+SSD+networking етц. однако как хранили 10,000,000 записеи в 1997 годы в оракле
    так и сегодня (vertical software) — тол'ко сегодня все виснет и сплошине ошибки :) — конечно мне и всем осталним программистам это
    выгодно когда береш /hour но когда работаеш на себя — совсем другая картина.

    а впрочем мало что изменилось — тот кто грамотный мыслитель сможет написать в 2015 хоть на Борланд ТП хоть на Руби —

    а вообще все эти споры о чем-то непонятно о чем. расскажите лучше что есть у вас, киньте ссылку.
    например вы набросились на г-на визарда за его статию — а ведь это реально круто работает в массе прикладных задач.
    не нравится — не берите, но намного болше хотелось бы увидеть что делаете вы и как — а мы бы позаимствовали ваш опыт
  • Пишем LINQ на JavaScript с нуля
    0
    people get sued daily. you just don't know about it.
    the moment you start making money — you will get sued. This is how society works.

    I have personally sold code on numerous occasions, every time whoever buys your code will execute a complete investigation
    what they are buying. I agree with you — this is laughable, but it is how it works.
    An average technical attorney charges $500/hr in New York.
    To read your code base (even if it uses JQuery, Angular, MySQL) — they will charge at the very least 10 hrs investigation +
    2 hrs admin time, so here you are at $6,000 bill.

    The case of Serge — I know personally, our common friend was in court. The accusations that have been set — are completely contradictory to what the LICENSING terms of EXISTING code showed, the code existed BEFORE Goldman. The case was 100% fabricated form day 1.

    This is just an illustration. I was trying to explain that licensing does not really protect companies when someone wants to push them
  • Пишем LINQ на JavaScript с нуля
  • Пишем LINQ на JavaScript с нуля
    0
    this means absolutely nothing. and obviously you have no background in law interpretation.

    funny, Serge Alaynikov who has just been acquitted today after 4 years of legal battle,
    — acquitted for the 2nd time — as this VIOLATES the constitution and double jeopardy law.

    he has been sued EXACTLY for this — he posted code under MIT and Apache while at Goldman,
    the code that HAS BEEN opensource for 10 years — he spent in jail almost a year. go google him up bro
  • Пишем LINQ на JavaScript с нуля
    0
    how many times have you owned a software company in the US and been sued for licensing violations?
    MIT = means nothing
    when you sell your IP, lawyers do a due diligence on you, that is when EVERY LIBRARY that you use is going to open
    a potential legal case, and transform to $10-20K of hiring legal counsel with technical background to deliver the statement of IP validity
  • Пишем LINQ на JavaScript с нуля
    0
    sorry, but it appears that mostly people have no clue what a license means in the context of a «civilized world».
    The OpenSource licenses are very much liable to err when there is dough involved…
  • Пишем LINQ на JavaScript с нуля
    –2
    я только за!
    возмите и сравните наш случай который описан выше (про трайдинг)

    уверен что у нас будет все медленее а может и нет, насколько — посмотрим
    однако если вы наидете и порекоммендуете ускорение — бyдем очен признательны
  • Пишем LINQ на JavaScript с нуля
    0
    yes, server processes steady 100,000 msg/sec using NFX Glue + Erlang.OTP

    Generates JSON payload which is fed to client via NFX.Wave server, client workls over a buffer of around 5-10K summaries that the user may visually adjust (find harmonics, apply EMA, edd noise etc..) they see it in chart

    is this the most efficient solution? no it is not. the most efficient one would have been rewriting all in WPF/C# on the client, but it does its job very well.
  • Пишем LINQ на JavaScript с нуля
  • Пишем LINQ на JavaScript с нуля
    0
    посмотрите на это. займет реално 3 минути внимания.

    github.com/aumcode/serbench

    я не успел ещо опыбликоват реzултаты — сами их получите на своеи машине

    там все тесты ПРОТИВ НФХ, там все заточено под других производителей.

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

    если вам реално интересно. этот тул именно для скептиков, первые — это мы сами.
  • Пишем LINQ на JavaScript с нуля
    0
    вам ничего не продают, мы делимся опытом.
    если вы считаете что вас обманули в чем-то, зачем тогда писать комментарии вообше не по теме.
    вы прекрасно понимаете сравнение с производителями авто и дисскутировать это нет смысла.

    если вам РЕАЛьНО интересно зачем мы делаем так как мы делаем, задайте конкретние вопросы и ПРОЧИТАЙте внимательно ответ.

    а так я с вами на 1000% процентов согласен — все ето никому не надо, вообще ничего никому не надо и уэ все есть в тои или инои форме
  • Пишем LINQ на JavaScript с нуля
    0
    ничем, однако оно даёт универсалность обработки разних данных, например
    как такое сделать?
    github.com/aumcode/nfx/blob/master/Source/NFX.Wave/Templatization/StockContent/Embedded/script/wv.utest.htm#L2726-2771

    уравниваем самплинг
    github.com/aumcode/nfx/blob/master/Source/NFX.Wave/Templatization/StockContent/Embedded/script/wv.utest.htm#L2886-2901
  • Пишем LINQ на JavaScript с нуля
    0
    дело в комплексном подходе.
    Walkable исползуется в 100 мест в разних компонентах огромнои системы.
    Для того чтобы что-то «слепить» пару раз конечно не нужно.

    это как — стоит ли там хонде или ниссану самому делать сидения для машин