Java 快速學習自我挑戰 Day8
物件導向程式設計 (OOP) - Classes, Constructors 和 Inheritance Classes 真實世界的物件有兩種特徵,狀態(State)和行為(Behavior),在物件導向程式裡面,同樣也有狀態和行為。Class 則是用來創建物件的模板,前面我們使用的都是原始資料型態(Primtive Data Type),可以用的非常有限,而使用 Class 可以自定義資料
物件導向程式設計 (OOP) - Classes, Constructors 和 Inheritance Classes 真實世界的物件有兩種特徵,狀態(State)和行為(Behavior),在物件導向程式裡面,同樣也有狀態和行為。Class 則是用來創建物件的模板,前面我們使用的都是原始資料型態(Primtive Data Type),可以用的非常有限,而使用 Class 可以自定義資料
控制流陳述句 從 String 解析出值 使用 Integer.parseInt 就可以將 String 轉換為 int。 1234567891011121314151617181920public static void main(String[] args) { String numberAsSting = "2018"; System.out
控制流陳述句 數字和挑戰 Write a method with the name sumDigits that has one int parameter called number. If parameter is >= 10 then the method should process the number and return sum of all digits, otherw
控制流陳述句(Control Flow Statements) Switch 陳述句 Switch 陳述句就是 if-else 的取代版本,如果條件很多的情況下,用 switch 會更簡潔,也可以同時定義很多 case 並執行一種命令。最重要的是,每個 case 最後面一定要加上 break,否則會繼續執行,最後一個可以不加,但是為了程式碼的完整性,會建議加上。 1234567891011
題目練習 題目五 Write a method areEqualByThreeDecimalPlaces with two parameters of type double. The method should return boolean and it needs to return true if two double numbers are the same up to three d
Java 教學 - 表達式(Expressions)、陳述句(Statements)、程式碼區塊(Code Blocks)、方法(Methods)…等等 關鍵字(Keywords)和表達式(Expressions) Java Keyword 列表 int int = 5;,這樣的語法會出現錯誤,關鍵字是被保留的,所以在命名變數的時候,不能使用跟關鍵字同名的變數。 裡面的 kilometers
第一步 - PartII Java 型態轉換(Java Casting) Casting 就是將數字從一個型態轉為另一個型態,我們將我們想要的型態放到 () 裡面,像這樣:(byte) (myMinByteValue / 2) 其它語言也有型態轉換,這不是 Java 獨有的功能。 如果不指定型態,Java 會默認為 Integer。 原始型態挑戰 挑戰:創建一個 byte 變數並設為有效
課前準備 問問題的技巧 盡可能地精準的問問題:貼上程式碼,加一些畫面截圖。 問別人沒問過的問題:在問問題之前,先找找看別人有沒有問過。 成為工程師的四個階段 Unconscious Incompetence (無意識的無能):在剛開始起步的時候,你不知道你不會什麼,所以不要做長期規劃,應該要專注在基礎上面。 Conscious Incompetence (有意識的無能):你做一些調查
Service 簡介和演示 不要直接使用和管理 Pods,為什麼? 當我們使用 ReplicaSet 或 ReplicaController 做水平擴展 Scale 的時候,Pods 有可能會被 Terminated 當我們使用 Deployment 的時候,我們去更新 Docker Image Version,舊的 Pods 會被 Terminated,新的 Pods 會被創建 創建
Docker Cloud Docker Cloud 提供容器管理,編排,部署的托管服務 Docker Cloud 的模塊 關聯雲服務 AWS、Azure 添加節點作為 Docker Host 創建服務 Service 創建 Stack Image 管理 Docker Cloud 兩種運行模式 Standard 模式:一個 Node 就是一個 Docker Host Swarm 模式:
容器編排 Swarm 到處使用 Container 很麻煩,為了解決這些問題,Docker Swarm 就出現了 如何管理這麼多容器? 如何橫向擴展? 如果容器 down 了,如何自動恢復? 如何更新容器不影響業務? 如何監控和追蹤這些容器? 如何調度容器的創建? 如何保護隱私數據? Swarm 是集群,有集群就有節點,有節點就有角色,Swarm 總共有兩個角色,一個叫做 Manage
Docker 的數據持久化和數據共享 Container 是在 Image 之上去創建的,Container 可以讀寫數據,而 Image 只能夠讀取,但是 Container 裡面所寫入的數據,只會存在 Container 裡面,如果刪除 Container,寫入的數據會全部消失。但是有一種需求,資料庫的 Container 會有數據的讀寫,在這種情況下,Docker 就需要數據持久化。
Docker 網路簡介 Docker 網路 單機:Bridge Network / Host Network / None Network 多機:Overlay Network 用 Vagrant 開啟兩台機器,新增 Vagrantfile 網路基本概念 如果要跟 Web 服務器通訊,流程是,打開瀏覽器,取得服務器內容,這個過程使用的是 HTTP 協議。 傳輸網站數據,就需要理解網
Dockerfile 語法梳理與最佳實踐 Dockerfile 語法 FROM 語法:為了安全,盡量使用官方的 Image 作為 Base Image FROM scratch 製作 Base Image FROM centos 使用 Base Image FROM ubuntu:14.04 Label 語法:Metadata 不可少,可以理解成註釋 LABEL maintainer
Docker 的架構和底層技術 Docker Platform Docker 提供了一個開發,打包,運行 App 的平台 把 App 和底層 Infrastructure 隔離開來 Docker Engine Docker Engine 是 Docker 最重要的組件 後台進程(dockerd),提供了 REST API Server,還有 CLI 接口 在虛擬機裡面可以看 Docker
課前準備及目標 因為新的專案要使用 CI 和 CD,研究之後,發現應該要先學 Docker,最後的目標希望能在專案實現自動化的部署。預計使用工具為 Drone 和 Gogs 來實現 Laravel 專案的自動部署。最終的目標,當然是希望透過 Docker 讓 DevOps 更有系統性,拋開以往的手動化操作可能發生的錯誤,讓程式碼發佈更為嚴謹且穩定。 Docker 簡介 Docker