在JavaOne 2016主題演講開場,來自Oracle的Java產品管理負責人Sharat Chander指出Java盛行于個人和工作的日常生活各個領域,無論是大數據、物聯網甚至是云端!他給觀眾展示了一下Oracle學院,這可以讓年輕的Java開發者獲取相關知識、相互交流并參與到Java社區中。
他談及了一個名為go.java的Oracle的補充倡議,旨在激勵下一代開發者繼續學習。Oracle同時為Java開發人員啟動了一個新的開發者門戶——Oracle Developer Gateway(https://developer.oracle.com/index.html)。
接下來Intel軟件與服務團隊副總裁Michael Greene上臺,他主要圍繞“Java使智慧、互聯的世界成為可能”展開。Greene將一個成長周期描述為智能設備驅動數據向云端遷移,最終改變企業本身的過程。
他鼓勵企業挖掘這個Java所提供的端到端的機會,并舉例Intel是如何通過在OpenJDK上的合作幫助Java變得更簡單、高效、易擴展。他之后將講臺讓給來自Cern(歐洲核子研究組織)的Benjamin Wolff,Wolff介紹了Cern運行在JDK上的大規??刂坪捅O測設備及ERP系統。
之后來自Twitter的工程副總裁Nandini Ramani上臺加入Greene的演講。Ramani透露了Twitter無法應對在2010世界杯期間所產生的數據流量,以及他們如何做出工程上的決策,從單獨的Ruby-on-Rail工程遷移到運行在Linux上基于OpenJDK的Java、Scala微服務架構。在最近的2014世界杯期間,Twitter得以輕松處理3500萬微博。
接下來Databricks首席架構師兼聯合創始人Raynold Xin談論了Apache Spark。Spark應用的范圍涉及從商業智能到機器學習(人工智能)以及實時數據分析。Xin表示,JVM首先需要通過增強矢量優化來改進數值計算,這其中Panama項目將扮演一個重要角色。其次,JVM需要暴露低層次的硬件特性。
之后Oracle開發副總裁Georges Saab上臺并介紹了南卡羅萊納大學研究教授Anita Sengupta博士。Sengupta博士向觀眾深入介紹了諸多探測器在火星的研究成果,包括最新的好奇號火星車。她著重強調了火星和地球的異同,并談論了他們在系統開發和測試中所付出的工程上的努力。
Sengupta博士之后通過一個可視化演示,展示了真實的著陸流程以及真實著陸及計算模型的著陸后分析。她論述了火星上不同的信息收集系統,如光譜感應器、氣象感應器、生命形式探測儀。Sengupta博士預言未來探索性科技的研究會將人類送往火星,她想知道人們是否會歡迎這樣的探索并在新的世界定居。
接下來Saab回到講臺,帶領觀眾回顧了過去,然后論述了Java的成長及其中的哲學。(見下圖)
Saab談及需要滿足開發者的效率要求,之后他宣布Oracle JDK很快將發布在Docker上。之后Mazda的IT解決方案部門員工經理Masahiro Yoshioka和Wavefront聯合創始人兼首席架構師Clement Pang介紹了他們的成功案例。Saab懇請觀眾升級到Java 8,許多嘗鮮者和開發人員已經下載了Java SE 9。之后他邀請Oracle Java平臺組首席架構師Mark Reinhold上臺。
Reinhold從廣受期待的Java 9開始,讓觀眾一睹所有將要包含的JDK增強提案(JEP)。他談及新的JShell交互式命令行(在InfoQ最近的新聞中已有介紹:https://www.infoq.com/news/2016/09/JavaOne-2016-Keynote-JShell)。Reinhold之后說到Jigsaw項目,這個項目為當前的一體化的平臺定義了一個標準的模塊化系統。模塊化系統擁有可伸縮、易用、易兼容的特性。該模塊化系統設計的原理內部提供了強大的封裝和可靠的配置。之后他展示了使用JShell的例子:
Reinhold在討論完JShell控制臺后,拿出下圖介紹了72個Java標準模塊。
他同時確認現存的代碼可以毫無障礙地在上面運行??傮w來說,如果應用只是使用Java SE類庫,就可以毫無問題地運行在Java 9上。但內部API出于安全和集成的原因有所封裝,所以應用如果對這些內部API有依賴那么可能會遇到問題。
Reinhold表示,JDK將與JLink一起構建,他也展示了如何使用JLink來制作小型JDK:
之后Reinhold邀請Oracle的Java語言架構師Brian Goetz上臺,談論了Java 10以及之后的發展。Goetz討論了樣板代碼(boilerplate code),以及如何將它們從簡單的領域類(domain classes)中移除。他同時談到了將類型推斷(type inference)范圍擴展到局部變量。Reinhold就Valhalla和Panama這些大項目詢問了Goetz。InfoQ已在對JavaOne 2015主題演講的報道中對它們有所介紹。
此次主題演講由Oracle云應用基金會副總裁Anil Gaur壓軸。想要了解更多Gaur的演講,請參考InfoQ的相關報道(Java 20年,以后將往哪兒走?)。
本文翻譯已獲授權,原文鏈接:
https://www.infoq.com/news/2016/09/JavaOne-2016-Keynote-Jigsaw
本文譯者:周元昊
隨著企業規模擴張和業務量的急劇增加,作為系統核心的數據庫相關開發也會經歷一個由單一團隊發展為多團隊;由單機擴張到集群;由單數據庫發展為多數據庫;由采用單一數據庫產品到多種數據庫產品并存的過程。
伴隨這一過程的是如何管理數據庫擴展,如何規范數據庫訪問,如何保護數據庫投資,如何應對訪問量增加,如何預防安全問題等一系列挑戰。
作為國內在線旅游行業的翹楚,攜程也曾經面對同樣困擾。為了應對這些挑戰,實現企業10倍速發展,攜程開發了具有自己特色的數據庫訪問框架Ctrip DAL。
Ctrip DAL支持流行的分庫分表操作,支持Java和C#,支持MySQL和MSSqlServer。使用該框架可以在有效地保護企業已有數據庫投資的同時,迅速,可靠地為企業提供數據庫訪問層的橫向擴展能力。
整個框架包括代碼生成器和客戶端。工作模式是使用代碼生成器在線生成代碼,通過DAL客戶端完成數據庫操作。生成器具有豐富的向導指引,操作簡單清晰,既可以批量生成標準DAO,也可以在方法級別定制數據庫訪問??蛻舳藙t可以簡單地通過標準的maven方式添加依賴。
Ctrip DAL與一般數據庫框架最大的不同是從企業跨部門的角度,統一管理數據庫相關資源。通過部署代碼生成器,企業可以做到有效的管理全公司的DAL開發團隊,明確數據庫歸屬和定制數據庫訪問。
通過代碼生成器生成的標準DAO代碼與客戶端配合使用,可以大幅提高工作效率,保證代碼質量。解決了業內常見的伴隨業務成長而帶來的系統維護困難,開發效率低下,代碼風格五花八門,代碼質量參差不齊等痛點問題。
為了適應不同公司的實際情況,DAL定義了豐富的擴展接口,覆蓋了從數據源管理,數據庫映射,連接串讀取到自定義訪問方式等等方方面面的功能。同時為了方便系統監控還內置了系統狀態,日志和統計模塊。
Ctrip DAL由攜程技術中心框架部DAL團隊開發,歷經3年不斷打磨,在長期的實際使用中吸收了大量用戶反饋。目前攜程超過117個獨立DAL團隊通過代碼生成器管理數據庫和創建DAO。2000多個應用在使用DAL框架,占攜程所有數據庫應用總數超過90%。
本次開源的產品包括代碼生成器和Java客戶端,C#客戶端也將近期開源。DAL各個組件的安裝和使用都有詳細的文檔說明,開箱即用。通過開源攜程自身使用DAL框架,攜程希望在滿足自身需求的同時,服務于廣大企業,并繼續為中國方興未艾的開源運動出點力。
更多詳情請參考:https://github.com/ctripcorp/dal
Ceylon是RedHat針對JVM的強靜態類型語言,目前達到了1.3版本。在1.2版本發布一年之后,Ceylon 1.3會是一個主發布版本,它帶來的特性包括對Android的支持、npm集成以及針對IntelliJ IDEA和Android Studio的一個插件,除此之外,還有新的語言特性和增強。
Ceylon能夠編譯成JavaScript,它很早就支持創建針對iOS和Android的混合(hybrid)應用,例如使用Apache Cordova。新的Ceylon 1.3能夠穩定支持Android原生應用的構建,這項特性在今年早些時候的夜間構建版本中首次對外公開。
與此相關的,Ceylon 1.3引入了一個針對Android Studio和IntelliJ IDEA的新插件,這個插件與使用Eclipse進行開發時,所提供的支持是相對應的。這個新的插件包含了對上下文補全、重構、源碼導航以及在線文檔集成的支持。
其他有趣的新特性還有npm集成,通過它能夠很容易地從npm中導入模塊并將模塊發布到npm之中,另外它還支持通過一個CLI插件使用WildFly Swarm開發微服務。
在語言方面,Ceylon 1.3帶來了匿名函數參數的解構賦值(destructuring)功能,除此之外,還有CorrespondenceMutator和Collection.combinations,以及對Java APT處理器的實驗性支持,它還關閉了330多個issue。
Ceylon 1.3向后兼容Ceylon 1.2.2,并不需要重新編譯或變更依賴。
Ceylon是針對Java和JavaScript虛擬機的靜態類型編程語言。它提供了一個流程敏感(flow-sensitive)的靜態類型系統,在這里由某個變量推斷出的類型隨著控制流語句的轉換,可能會發生變更,它還包含一些其他的高級特性,比如optionals、union和intersection類型以及具體化泛型(reified generics)等等。
本文翻譯已獲授權,原文鏈接:
http://www.infoq.com/news/2016/09/ceylon-13-android-support
本文譯者:張衛濱
▽
喜歡我們的會點贊,愛我們的會分享!
電路圖一大張,看似復雜,但也都是由一小塊一小塊的功能模塊組成的。因此要根據大的功能先劃分成塊,再在塊里面看是通過什么電路形式實現的,有些起輔助作用,有些起主要作用。下面小編給大家整理了16種常用的模塊電路分析,希望對大家有幫助。
1. RS232通訊電路
雙路232通信電路:3線連接方式,對應的是母頭,工作電壓5V,可以使用MAX202或MAX232。
2. 三極管串口通訊
三極管串口通信:本電路是用三極管搭的,電路簡單,成本低,但是問題,一般在低波特率下是非常好的。
3. 單路RS232通訊
單路232通信電路:三線方式,與上面的三級管搭的完全等效。
4. USB轉RS232
USB轉232電路:采用的是PL2303HX,價格便宜,穩定性還不錯。
5. 復位電路
SP706S復位電路:帶看門狗和手動復位,價格便宜(美信的貴很多),R4為調試用,調試完后焊接好R4。
6. SD卡模塊電路
SD卡模塊電路(帶鎖):本電路與SD卡的封裝有關,注意與封裝對應。此電路可以通過端口控制SD卡的電源,比較完善,可以用于5V和3.3V。但是要注意,有些器件的使用,5V和3.3是不一樣的。
7. LCM12864液晶顯示電路
LCM12864液晶模塊(ST7920):本電路是常見的12864電路,價格便宜,帶中文字庫??梢酝ㄟ^PSB端口的電平來設置其工作在串口模式還是并行模式,帶背光控制功能。
8. LCD1602液晶顯示電路
LCD1602字符液晶模塊(KS0066):最常用的字符液晶模塊,只能顯示數字和字符,可4位或8位控制,帶背光功能。
9. 全雙工RS485電路
全雙工RS485電路(帶保護功能):帶有保護功能,全雙工4線通信模式,適合遠距離通信用。
10. 半雙工RS485電路
RS485半雙工通信模塊:可以通過選擇端口選擇數據的傳輸方向,帶保護功率。此模塊只能工作在5V.
11. JTAG仿真接口
ARM JTAG仿真接口電路:比較完善,可以應用在常規的ARM芯片下,具有有自動下載功能,可以用JLINK或ULINK.
12. DC5V輸出電路
5V電源模塊:這個電路比較簡單,如果用直插可以達到1.5A,如果用貼片的可以到達1A。
13. DC3.3V電源輸出電路
3.3電源模塊:可以到達800mA,價格非常便宜,也有相應的1.8/1.2的芯片,可以直接替換。
14. 常用開關電源電路
15. DS1302時鐘電路
DS1302數字時鐘:一款非常普及的時鐘電路,好用,成本低。
16. AT24C02通訊電路
AT24C02(EEPROM):最常用的EEPROM電路。
來源:網絡
聲明:本文所用視頻、圖片、文字如涉及作品版權問題,請第一時間告知,我們將根據您提供的證明材
料確認版權并按國家標準支付稿酬或立即刪除內容。