總算在 5/31 PM 11:57進入到第十二章節,
必須在 6/2 之前完成,還有四個章節,
得趕快繼續趕工了!
2017年5月31日 星期三
2017年5月28日 星期日
[HTML/CSS]第九章 Box Model 深入親近元件:media query
此章節說明在不同裝置上瀏覽器選擇套用的不同樣式,
難怪有時候在印列網頁時,視覺瀏覽與列印出來的樣式會有差異。
上次發文是5/24,今天是5/29,
從第三章迄今已第九章閱畢,總共有15章,得快加緊腳步在6/2號念完。
從第三章迄今已第九章閱畢,總共有15章,得快加緊腳步在6/2號念完。
2017年5月24日 星期三
[HTML/CSS]第三章 建立區塊 網頁架構:第116頁勘誤
在深入淺出HTML and CSS 第二版的第116頁有誤,
我的書是2016年04月初版三刷,
官網勘誤表( http://books.gotop.com.tw/o_A327 )的錯誤在我的書裡已是更正過,
但表格內也沒有指出該項錯誤。
勘誤如下,提示縱橫及項目數字錯誤,應修正為:
橫向
1. Segway 的最高時速。
6. 把某個元件放在另一個元件,就稱為______。
9. <q>屬於這類元件。
10.使用<ol>製作此類清單。
13.另一個空元件。
14.Tony的交通工具。
15.網頁上的主要結構單元。
縱向
2. Tony 不會做這類事情。
3. 一起開著 T-bird 離開。
4. 使用<ul>製作此類清單。
5. 沒有內容的元件。
7. 知名又引人注目的廣告招牌。
8. 用於引文的區塊元件。
11.需要兩個元件。
12.空元件沒有______。
我的書是2016年04月初版三刷,
官網勘誤表( http://books.gotop.com.tw/o_A327 )的錯誤在我的書裡已是更正過,
但表格內也沒有指出該項錯誤。
勘誤如下,提示縱橫及項目數字錯誤,應修正為:
橫向
1. Segway 的最高時速。
6. 把某個元件放在另一個元件,就稱為______。
9. <q>屬於這類元件。
10.使用<ol>製作此類清單。
13.另一個空元件。
14.Tony的交通工具。
15.網頁上的主要結構單元。
縱向
2. Tony 不會做這類事情。
3. 一起開著 T-bird 離開。
4. 使用<ul>製作此類清單。
5. 沒有內容的元件。
7. 知名又引人注目的廣告招牌。
8. 用於引文的區塊元件。
11.需要兩個元件。
12.空元件沒有______。
[HTML/CSS]第三章 建立區塊 網頁架構:心得小記
使用書籍:深入淺出HTML and CSS
P.96
發文時已經到第三章了。
第一本書:別再說你不懂HTML5 圖解網頁設計必學的九堂課
說明不夠完整,現在使用的《深入淺出》內容活潑詳盡。
在這一頁,練習把手寫遊記寫成網頁,
出現了第二個無closing tag的元件:<br>
使用的位置也不同。 在此紀錄同時掌握進度,目前算是落後。
發文時已經到第三章了。
第一本書:別再說你不懂HTML5 圖解網頁設計必學的九堂課
說明不夠完整,現在使用的《深入淺出》內容活潑詳盡。
在這一頁,練習把手寫遊記寫成網頁,
出現了第二個無closing tag的元件:<br>
使用的位置也不同。 在此紀錄同時掌握進度,目前算是落後。
2017年5月17日 星期三
[LIFE]轉折 主動認識MagicLen之後:前端三大請進,JAVA再相會
從連結點到這個網站
https://magiclen.org/
看到是台中人,也曾有過餐飲經歷,主因在文末也有聲明歡迎加好友。
於是詢問之下,決定將JAVA學習比例下放,
應該今天下午JS的書就會到,要開始猛攻三大(JS HTML CSS)了,
日後發文也會以三大的為主要篇幅,暫時與JAVA分手。
https://magiclen.org/
看到是台中人,也曾有過餐飲經歷,主因在文末也有聲明歡迎加好友。
於是詢問之下,決定將JAVA學習比例下放,
應該今天下午JS的書就會到,要開始猛攻三大(JS HTML CSS)了,
日後發文也會以三大的為主要篇幅,暫時與JAVA分手。
[JAVA]第4章 認識物件:課後練習(二)
2.撰寫:簡單的樸克牌洗牌程式
失敗作品:
public static void main(String[] args) {
String[] type = {"桃", "心", "磚", "梅"};
String[] number
= {"A", "2", "3", "4", "5", "6", "7",
"8", "9", "10", "J", "Q", "K"};
for (int j = 0; j < 52; j++) {
int t = (int) (Math.random() * 4); //隨機產生0~3索引值
int n = (int) (Math.random() * 13); //隨機產生0~12索引值
String[] card = new String[52];
card[j] = type[t] + " " + number[n];
//若有元素重複則重新產生,若使用break會少一張牌
// if (j + 1 < 52 && card[j + 1].equals(card[j])) {
// break;
// }
System.out.print(card[j] + " ");
}
System.out.println();
}
}
後來想到new在迴圈裡可能會造成程式效率差,
把new拉到迴圈開始前,繼續思考元素可能重複的問題,最後想不出解。
於是換個想法:先把所有的牌都「依序」製造出來,再隨機排列。
失敗作品:
public static void main(String[] args) {
String[] type = {"桃", "心", "磚", "梅"};
String[] number
= {"A", "2", "3", "4", "5", "6", "7",
"8", "9", "10", "J", "Q", "K"};
for (int j = 0; j < 52; j++) {
int t = (int) (Math.random() * 4); //隨機產生0~3索引值
int n = (int) (Math.random() * 13); //隨機產生0~12索引值
String[] card = new String[52];
card[j] = type[t] + " " + number[n];
//若有元素重複則重新產生,若使用break會少一張牌
// if (j + 1 < 52 && card[j + 1].equals(card[j])) {
// break;
// }
System.out.print(card[j] + " ");
}
System.out.println();
}
}
後來想到new在迴圈裡可能會造成程式效率差,
把new拉到迴圈開始前,繼續思考元素可能重複的問題,最後想不出解。
於是換個想法:先把所有的牌都「依序」製造出來,再隨機排列。
[JAVA]第4章 認識物件:課後練習(一)
1.撰寫:可讓使用者輸入想計算的費氏(Fibonacci)數個數的程式
public static void main(String[] args) {
java.util.Scanner sc1 = new Scanner(System.in);
System.out.print("求幾個費氏數?");
int n = Integer.parseInt(sc1.nextLine());
switch (n) {
case 1:
case 2:
for (int f = 0; f <= n - 1; f++) {
System.out.printf("%d ", f);
}
break;
default:
//case >=3
int[] f_arr = new int[n];
f_arr[0] = 0;
f_arr[1] = 1;
for (int i = 2; i <= n - 1; i++) {
f_arr[i] = f_arr[i - 2] + f_arr[i - 1];
}
for (int f : f_arr) {
System.out.printf("%d ", f);
}
}
}
想了一段時間,多次從錯中修正,在 if 和 switch 間取捨也有猶豫一下,
最多次出現的 exception,是陣列長度與元素數量不符,
所以嘗試調度建立陣列物件的位置和條件式,
使變數 n 先決定陣列長度後,再進入迴圈,
還有因為 enhanced for loop & print 的位置起初置放於迴圈內,
直接拉到迴圈外會產生編譯錯誤,
故將 int[] f_arr 調整至迴圈外。
是題有成就感的題目。
public static void main(String[] args) {
java.util.Scanner sc1 = new Scanner(System.in);
System.out.print("求幾個費氏數?");
int n = Integer.parseInt(sc1.nextLine());
switch (n) {
case 1:
case 2:
for (int f = 0; f <= n - 1; f++) {
System.out.printf("%d ", f);
}
break;
default:
//case >=3
int[] f_arr = new int[n];
f_arr[0] = 0;
f_arr[1] = 1;
for (int i = 2; i <= n - 1; i++) {
f_arr[i] = f_arr[i - 2] + f_arr[i - 1];
}
for (int f : f_arr) {
System.out.printf("%d ", f);
}
}
}
想了一段時間,多次從錯中修正,在 if 和 switch 間取捨也有猶豫一下,
最多次出現的 exception,是陣列長度與元素數量不符,
所以嘗試調度建立陣列物件的位置和條件式,
使變數 n 先決定陣列長度後,再進入迴圈,
還有因為 enhanced for loop & print 的位置起初置放於迴圈內,
直接拉到迴圈外會產生編譯錯誤,
故將 int[] f_arr 調整至迴圈外。
是題有成就感的題目。
2017年5月16日 星期二
[JAVA]第4章 認識物件:4.3.3 陣列複製(Sallow copy、Deep copy)
在4-30、4-31陣列複製談到淺層複製與深層複製
以下是我節錄整理的解讀
Sallow copy: 複製「參考」
Deep copy: 「建立」(new)並複製「元素」
以下是我節錄整理的解讀
Sallow copy: 複製「參考」
Deep copy: 「建立」(new)並複製「元素」
2017年5月10日 星期三
[JAVA]第3章 基礎語法:課後練習
1.最大公因數 (G.C.D.)
2.找出所有三位數的阿姆斯壯數 (Armstrong number)
1.
int n = 495, m = 1000;
for (int i = 1; i <= m; i++) {
if (n % i == 0 && m % i == 0) {
System.out.println("cd(495,1000)=" + i);
}
}
花很多時間在想:如何只印出gcd,但還是沒想到。
有想過用Array,不過單元還沒介紹到,先在此紀錄。
2.
int h=1,t=0,o=0;
for(h=1;h<=9;h++){
for(t=0;t<=9;t++){
for(o=0;o<=9;o++){
if(h*h*h+t*t*t+o*o*o == h*100+t*10+o*1){
System.out.println(h*100+t*10+o*1);
}
}
}
}
原本設 int hun,ten,one;
但後來發現不能使用 ^ 運算三次方,
只好簡化、並用 * 運算蠻幹,先寫出這麼醜的程式碼。
還在想如何寫得漂亮,可能要用Math.*吧,同上題原因先記錄。
2.找出所有三位數的阿姆斯壯數 (Armstrong number)
1.
int n = 495, m = 1000;
for (int i = 1; i <= m; i++) {
if (n % i == 0 && m % i == 0) {
System.out.println("cd(495,1000)=" + i);
}
}
花很多時間在想:如何只印出gcd,但還是沒想到。
有想過用Array,不過單元還沒介紹到,先在此紀錄。
2.
int h=1,t=0,o=0;
for(h=1;h<=9;h++){
for(t=0;t<=9;t++){
for(o=0;o<=9;o++){
if(h*h*h+t*t*t+o*o*o == h*100+t*10+o*1){
System.out.println(h*100+t*10+o*1);
}
}
}
}
原本設 int hun,ten,one;
但後來發現不能使用 ^ 運算三次方,
只好簡化、並用 * 運算蠻幹,先寫出這麼醜的程式碼。
還在想如何寫得漂亮,可能要用Math.*吧,同上題原因先記錄。
2017年5月9日 星期二
[JAVA]第3章 基礎語法:3.2.5 break、continue
頁碼 3-31、3-32
https://openhome.cc/Gossip/Java/Break-Continue.html
continue
只會略過之後陳述句,並回到迴圈區塊開頭進行下一次迴圈,而不是離開迴圈。這裡的範例不夠理解:
back1:
for(int i = 0; i < 10; i++){
back2:
for(int j = 0; j < 10; j++) {
if(j == 9) {
continue back1;
}
}
System.out.println("test");
}
目前理解是這樣:這裡i = 0,在j = 9 時遇到continue back1,
忽略back1 for迴圈的陳述句(從 back2: 到 印出"test"),
進行i = 1,重複執行到i = 10離開迴圈。
back1:
for(int i = 0; i < 10; i++){
back2:
for(int j = 0; j < 10; j++) {
if(j == 9) {
continue back2;
}
}
System.out.println("test");
}
i = 0,在j = 9 時遇到continue back2,忽略back2 for迴圈的陳述句
(從 for(int j = 0; ...) 到 印出"test"前的 "}" ),
(從 for(int j = 0; ...) 到 印出"test"前的 "}" ),
因為j = 10結束back2 for迴圈,
印出"test"沒有被忽略,所以在 i = 0, j = 10 時印出"test",
印出"test"沒有被忽略,所以在 i = 0, j = 10 時印出"test",
接著執行i = 1。
2017年5月7日 星期日
[JAVA]第2章 從JDK到IDE:2.2.1 javac與sourcepath
頁碼 2-16、2-17
覺得好混亂,反覆鑽研了三、四次還是不太懂,
https://openhome.cc/Gossip/Java/CLASSPATH-javac.html
漸漸有些頭緒,但還沒確定:
1. java 是啟動 JVM 的指令,-cp是找 位元碼 (.class) 的路徑
2. javac是啟動 compiler的指令,-sourcepath是找 原始碼 (.java) 的路徑
覺得好混亂,反覆鑽研了三、四次還是不太懂,
https://openhome.cc/Gossip/Java/CLASSPATH-javac.html
漸漸有些頭緒,但還沒確定:
1. java 是啟動 JVM 的指令,-cp是找 位元碼 (.class) 的路徑
2. javac是啟動 compiler的指令,-sourcepath是找 原始碼 (.java) 的路徑
訂閱:
文章 (Atom)
-
2019.07.26 此文章發表時,使用 gulp 版數為 3.9.1,所以在專案資料夾安裝 gulp 時請使用:gulp@3.9.1; 或在 package.json 降為 "gulp": "^3.9.1",但有網友說在 Node v1...
-
引入: 使用Skrollr.js實作視差滾動-(一)入門篇 lala0812.logdown.com 使用方法 art.is.com.tw 有提到parallax設計方向,及另開初始設定css的觀念 How To Create A Parallax Scrolling ...