摘要:中國(guó)開(kāi)發(fā)者的年度盛會(huì)中國(guó)開(kāi)發(fā)者大會(huì),于年月日在杭州舉辦了本年度的杭會(huì)議我們的和將為在現(xiàn)場(chǎng)為您帶來(lái)現(xiàn)場(chǎng)的報(bào)道,一覽大牛風(fēng)采,直擊技術(shù)熱點(diǎn)。簽到中第日的會(huì)議即將開(kāi)幕以下是與參會(huì)者和與博文視點(diǎn)的作者們合影
中國(guó)JS開(kāi)發(fā)者的年度盛會(huì)“JS中國(guó)開(kāi)發(fā)者大會(huì)”,于2014年6月21日在杭州舉辦了本年度的“杭JS”會(huì)議!
我們SegmentFault的 @integ 和 @shamiao 將為在現(xiàn)場(chǎng)為您帶來(lái)現(xiàn)場(chǎng)的報(bào)道,一覽大牛風(fēng)采,直擊技術(shù)熱點(diǎn)。
直播已經(jīng)結(jié)束,感謝大家的關(guān)注和支持!
更多照片繼續(xù)更新 6月22日(DAY 2) 1745 logout 1710 Web Components W3C新標(biāo)準(zhǔn)云適配CEO 陳本峰
The future of Web development. WebComponets.org
對(duì)抗當(dāng)前的Web前端框架中HTML內(nèi)容不分層次、無(wú)差別完全平鋪,無(wú)法維護(hù)的問(wèn)題
很多需要后端支持(包括Nodejs)的功能在Web Components中可以直接在前端完全實(shí)現(xiàn)
Template:創(chuàng)建模板,創(chuàng)建時(shí)DOM結(jié)構(gòu)已經(jīng)就緒但沒(méi)有開(kāi)始渲染、下載和JS執(zhí)行。通過(guò)cloneNode把模板真正置入文檔的DOM樹(shù)
Custom Element:自定義一個(gè)HTML標(biāo)簽,然后使用JS回調(diào)生成真正的HTML結(jié)構(gòu)
Shadow DOM:類似于chroot--掛載在某個(gè)元素下面,但不在DOM樹(shù)中顯示,獨(dú)立于當(dāng)前文檔父節(jié)點(diǎn),不受文檔樣式上級(jí)指揮下級(jí)的影響。
HTML Imports:僅前端實(shí)現(xiàn)的文件導(dǎo)入功能。
附-云適配開(kāi)源項(xiàng)目:Amaze UI
1645 Storm框架簡(jiǎn)介Luying Li,Twitter員工
Storm分布式、高容錯(cuò)實(shí)時(shí)計(jì)算系統(tǒng),Backtype開(kāi)發(fā)(Twitter收購(gòu))
開(kāi)源大數(shù)據(jù):Storm S4 Hadoop Spark Disco HPCC
確保數(shù)據(jù)完全處理(無(wú)丟失)、低延遲、高容錯(cuò)
Storm集群:Nimbus控制節(jié)點(diǎn),Zookeeper協(xié)調(diào)節(jié)點(diǎn),Supervisor工作節(jié)點(diǎn)
基本數(shù)據(jù)類型=Tuple;無(wú)邊界的Tuple序列=Stream;Stream的源頭=Spout
消息處理者Bolt:輸入1或多個(gè)Stream,輸出0或多個(gè)Stream
Topology拓?fù)浼軜?gòu):Spouts和Bolts組成網(wǎng)絡(luò);Task與流分組策略
Word Count Example
多語(yǔ)言性:Topology和Nimubs均基于Thrift,spouts和bolts都作為子進(jìn)程來(lái)運(yùn)行,使用JSON通訊
Storm在 GitHub上已經(jīng)有了部分Nodejs實(shí)現(xiàn)
1610 Hybrid API 的傳感器@鬼道-徐凱 <<跨終端Web>>作者
傳感器的類型:動(dòng)作、環(huán)境、音頻、視頻
陀螺儀原理 加速計(jì)原理
陀螺儀與重力感應(yīng)的誤解
GPS 磁力 光線溫度氣壓等
實(shí)際設(shè)備的項(xiàng)目實(shí)例
1545 Edge.jsIris Classon
在Node中運(yùn)行.net程序
調(diào)用預(yù)編譯的dll模塊
反向的在.net中調(diào)用Node程序
跨平臺(tái)--在Linux下使用Mono兼容層來(lái)應(yīng)用Edge.js
1510 five-lines 深入淺出node命令行工具Jacob Groundwater,NodeOS項(xiàng)目作者介紹如何使用Node寫操作系統(tǒng)的基礎(chǔ)套件
5行可以做一個(gè)Web Server(Node的Hello World)
那做一個(gè)命令行工具如何?(5行的CURL,把http請(qǐng)求內(nèi)容pipe到stdout)
更復(fù)雜的--可不可以寫一個(gè)Shell?(Shell的基本:解析輸入,調(diào)用進(jìn)程,顯示輸出結(jié)果。13行的Shell)
擴(kuò)展為遠(yuǎn)程Shell-- groundwater/node-wssh(服務(wù)器30行,客戶端40行)
那么可以做一個(gè)操作系統(tǒng)嗎?
操作系統(tǒng)的要件:內(nèi)核、包管理器、Shell
內(nèi)核=linux,shell=node shell,包管理器=npm--這是一個(gè)正在進(jìn)行的項(xiàng)目,請(qǐng)參閱node-os.com
1450 Nodejs與多種服務(wù)協(xié)作實(shí)踐 1400 玉伯:如何持續(xù)成長(zhǎng)我們不需要時(shí)間管理--情緒管理和適量自律才是需要的
不要依賴工具
input->person->output--知識(shí)管理的IPO模型
寫博客和寫博客
做有追求的程序員
garryyao from EF Labs Shanghai
我們需要的可能不是一些小打小鬧的功能庫(kù),而是一個(gè)完整的基礎(chǔ)框架。
功能庫(kù)(library):以做好一件事為賣點(diǎn),而后不斷的吸引你去使用他
框架(framework):做好一些最重要的事情,剩下的放用戶自己選擇
可擴(kuò)展性不只是功能擴(kuò)展,而也包含需求、函數(shù)庫(kù)甚至是多設(shè)備的擴(kuò)展
多設(shè)備的悲劇:ExtJS桌面強(qiáng)力,但移動(dòng)端幾乎無(wú)能,所以最后另出了一套Sencha Touch結(jié)果在API的兼容上又引入一堆問(wèn)題
所以一個(gè)框架絕對(duì)不能給開(kāi)發(fā)者設(shè)定太多的條條框框、一定不能越界做太多事情,必須抵制功能膨脹的誘惑
Unlearn & Relearn:拋掉既成成熟技術(shù)的條條框框,從而形成和創(chuàng)造新的概念
M、V、C、O、T......這些行為和做事方式定死的功能模塊,其實(shí)都可以規(guī)約為統(tǒng)一的"組件"(components)。
TroopJS組件的例子--組件通過(guò)從消息總線得到消息,從而被動(dòng)的進(jìn)行:開(kāi)啟結(jié)束生命周期、處理DOM行為、處理路由行為等各種操作
TroopJS不提供非常多的功能,許多可選的實(shí)用特性要在TroopJS上掛載模塊(modules)才能實(shí)現(xiàn)
1020 massive js developmentEF Learning Lab 的外國(guó)演講者(英孚教育不只是英語(yǔ)教學(xué))
大型項(xiàng)目(jquery),龐大項(xiàng)目(Github),巨型項(xiàng)目=massive(gmail)
這時(shí)開(kāi)發(fā)者分散在多個(gè)部門甚至多個(gè)公司,交流很痛苦卻仍然必須
你所有的模塊 都是屬于我的--規(guī)范化是鐵的原則
寫小的模塊,但不要過(guò)于碎片。寫小的部件,但時(shí)刻保留擴(kuò)展和連接成大系統(tǒng)的接口
小的、分布式的總是好于大的、單一模塊化的。--Linux內(nèi)核是個(gè)很大的特例
使用消息總線message bus整合多個(gè)組件之間的依賴和通訊
異步,除非TM有明確的目的必須同步--因?yàn)槲覀冇肋h(yuǎn)不知道網(wǎng)絡(luò)、資源阻塞等所有的意外狀況
事件驅(qū)動(dòng)--Node、DOM其實(shí)我們已經(jīng)在做了,但還需要放眼更多:Web sockets, Swing, Akka, Erlang
讓代碼自說(shuō)明--減輕人類的識(shí)讀負(fù)擔(dān)(congnitive load)
聲明式--描述"做什么"而不是"如何做"
DRY原則:不要重復(fù)copy來(lái)他人代碼的錯(cuò)誤
準(zhǔn)備一個(gè)root application--就像Linux的root或init,管理一切、容納一切、負(fù)責(zé)一切、代表一切
(噗 知道這個(gè)梗的就笑吧?。?/p>
0940 開(kāi)源項(xiàng)目管理維護(hù)經(jīng)驗(yàn)分享
郭宇(@turingou)分享他在github上從新手到有人fork、pr的熟練開(kāi)源玩家的歷程。
如果在Github上沒(méi)有方向 那就去尋找喜歡的領(lǐng)域
尋找解決問(wèn)題的辦法,尋找新的技術(shù)領(lǐng)域,不要投機(jī)
有了第二個(gè)人就不再是自己的代碼而是開(kāi)源項(xiàng)目
跨出寫代碼本身,注重?fù)Q位思維和表達(dá)力,注意管理項(xiàng)目走向
四要素:用戶(中心),代碼(手段),推廣,文檔
種子用戶(注:也叫核心用戶 core user)很重要
0900 sofish的AngularJS演講@sofish 為大家分享了使用Angular開(kāi)發(fā)web app的很多實(shí)用經(jīng)驗(yàn)。例如如何讓搜索引擎可以爬到web app的內(nèi)容,數(shù)據(jù)雙向綁定可能遇到的問(wèn)題,如何解決頁(yè)面閃爍等非常實(shí)用的經(jīng)驗(yàn)技巧
6月21日(DAY 1) 晚上:After PartyAfter Party是杭JS主辦方在下午會(huì)后特別為參會(huì)者提供的一場(chǎng)歡樂(lè)的自由聯(lián)歡活動(dòng)。
BlendUI 一個(gè)web app開(kāi)發(fā)框架。所有的元素都是webview!
1550 rabbit.js mvc框架芋頭君的小制作,輕量級(jí)mvc框架xinyu198736/Rabbit.js
輕量、約定嚴(yán)格、清晰分層、數(shù)據(jù)庫(kù)統(tǒng)一封裝
除mvc外,多加Filters, Service兩層
rabbit.js logo特別萌。猜猜是誰(shuí)畫的。
1515 Patrisika來(lái)自USTC的化學(xué)與材料科學(xué)家分享了js解釋器Patrisika.語(yǔ)速超快的,用很文藝的ppt。還學(xué)會(huì)了各種高大上的名詞:泛化,特化,因子,不平凡表達(dá)式,去正交化。
1420 p2p對(duì)等協(xié)作開(kāi)發(fā)James Halliday 美國(guó)著名nodejs極客與npm模塊作者。
cool的美式手繪風(fēng)幻燈片
網(wǎng)絡(luò)的協(xié)作可以做成一個(gè)大的項(xiàng)目
大的項(xiàng)目終究是大批小模塊的互相依賴
分治法
現(xiàn)場(chǎng)演示使用trumpet庫(kù)在nodejs下創(chuàng)建標(biāo)準(zhǔn)過(guò)濾器形式的html處理器
現(xiàn)場(chǎng)演示splicer管道流控制程序
現(xiàn)場(chǎng)演示如何使用的各種nodejs模塊拼裝一個(gè)web聊天程序
1400 Google Bigquery API來(lái)自臺(tái)灣nodejs社區(qū)的xxx,分享了google的big query??上oogle近期不能訪問(wèn)。
1330 抽獎(jiǎng)中午飯后的抽獎(jiǎng)環(huán)節(jié),一個(gè)帥到吐血的程序員把自己的獎(jiǎng)品送給了給他發(fā)獎(jiǎng)的妹子。
1110 淘寶前后端分離實(shí)踐前后端開(kāi)發(fā)必須合作,但常常責(zé)任不清,必須分離
后端mvc時(shí)代
當(dāng)前的前端新技術(shù)發(fā)展迅速
前端越來(lái)越復(fù)雜,肯定不是單純的“套頁(yè)面”,不是后端的附庸
前端內(nèi)部,和前后端之間耦合的緊密性
困惑:view層誰(shuí)做?
業(yè)務(wù)和渲染散落在應(yīng)用中,所以只能用響應(yīng)式硬來(lái)去做跨終端
前后端耦合遲早會(huì)造成代碼的腐爛
第一次分離嘗試:后端只出數(shù)據(jù)API,前端自己全包
問(wèn)題:各層職責(zé)重疊,并自成系統(tǒng)
客戶端渲染性能低下并且seo難做
前后端雖然看起來(lái)分離但仍然耦合,重用性差
到底什么是前端?什么是后端?
按照工作邏輯還是b/s的實(shí)體環(huán)境來(lái)區(qū)分?
nodejs打通前后端代碼的復(fù)用,穿透b/s鴻溝
后端=java 后臺(tái)+服務(wù)器端js,前端=瀏覽器端js
nodejs+bigpiper,前端仍然是分批加載的lazyload,但對(duì)于后臺(tái)仍然是一個(gè)請(qǐng)求,減少請(qǐng)求數(shù)的翻倍
案例:淘寶首頁(yè)、詳情頁(yè)、單頁(yè)面應(yīng)用
接口的模塊化和標(biāo)準(zhǔn)化
組件化:功能邏輯的整合和多態(tài),一處寫好各平臺(tái)通用
框架化:整體規(guī)范化和職責(zé)分離的未來(lái)
1050 atom shell嵌入nodejs實(shí)戰(zhàn)Github staff的演講
atom shell:用nodejs編程的chromium,同時(shí)嵌入到瀏覽器和渲染端
與node webkit相似,用nodejs請(qǐng)求本地系統(tǒng)的功能
但atom shell不假設(shè)用戶總會(huì)使用瀏覽器功能,只是封裝chromium的功能給node用戶使用
multi context patch 解決多context的問(wèn)題
atom shell的載入方式:先初始化chromium,再初始化多個(gè)context并載入nodejs
nodejs和原生gui循環(huán)的區(qū)別
一個(gè)主線程,兩個(gè)事件循環(huán)。本身不可能,但只照顧一個(gè)循環(huán)又不可行
atom shell選擇融合兩種循環(huán)方法
新開(kāi)子線程等待io事件,等待到了通知主線程
對(duì)chromium和nodejs的修改最小化
1000 then.js宣傳演講對(duì)項(xiàng)目 teambition/then.js 的宣傳。
0920 簽到中第1日的會(huì)議即將開(kāi)幕!以下是 @integ 與參會(huì)者和與博文視點(diǎn)的作者們合影
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/78176.html
摘要:年月日,由基金會(huì)在和年主辦的大會(huì)簡(jiǎn)稱將正式更名為簡(jiǎn)稱,并與主辦的大會(huì)合體,在上海世博中心盛大召開(kāi)。年月日,由基金會(huì)主辦的大會(huì)又一次在北京國(guó)家會(huì)議中心完美收官。 2019年6月24-26日,由Linux基金會(huì)在2017和2018年主辦的LinuxCon + ContainerCon + CloudOpen大會(huì)(簡(jiǎn)稱LC3)將正式更名為Open Source Summit(簡(jiǎn)稱OSS),并...
摘要:年月日,由基金會(huì)在和年主辦的大會(huì)簡(jiǎn)稱將正式更名為簡(jiǎn)稱,并與主辦的大會(huì)合體,在上海世博中心盛大召開(kāi)。年月日,由基金會(huì)主辦的大會(huì)又一次在北京國(guó)家會(huì)議中心完美收官。 2019年6月24-26日,由Linux基金會(huì)在2017和2018年主辦的LinuxCon + ContainerCon + CloudOpen大會(huì)(簡(jiǎn)稱LC3)將正式更名為Open Source Summit(簡(jiǎn)稱OSS),并...
摘要:年月日,由基金會(huì)在和年主辦的大會(huì)簡(jiǎn)稱將正式更名為簡(jiǎn)稱,并與主辦的大會(huì)合體,在上海世博中心盛大召開(kāi)。年月日,由基金會(huì)主辦的大會(huì)又一次在北京國(guó)家會(huì)議中心完美收官。 2019年6月24-26日,由Linux基金會(huì)在2017和2018年主辦的LinuxCon + ContainerCon + CloudOpen大會(huì)(簡(jiǎn)稱LC3)將正式更名為Open Source Summit(簡(jiǎn)稱OSS),并...
摘要:最后,我們來(lái)到了提前預(yù)定好的今晚的住宿地杭州旅行者漫步主題酒店。先一本正經(jīng)的打打官腔,還有童鞋不知道什么叫嗎口答前端技術(shù)論壇簡(jiǎn)稱。作為聽(tīng)眾,不要對(duì)期待參加某場(chǎng)技術(shù)會(huì)議,提升自我技術(shù)修養(yǎng)的效果會(huì)立竿見(jiàn)影。 showImg(https://segmentfault.com/img/bV0tLv?w=859&h=487); 前言 在這里,閏土首先要感謝以下兩位大佬提供的門票,分別是來(lái)自新浪微...
閱讀 3159·2021-11-22 09:34
閱讀 657·2021-11-22 09:34
閱讀 2516·2021-10-08 10:18
閱讀 3444·2021-09-22 15:57
閱讀 2698·2021-09-22 15:25
閱讀 2502·2019-08-30 15:54
閱讀 2253·2019-08-30 15:44
閱讀 1854·2019-08-29 11:18