用 Emojicode 寫一個(gè)可愛的程序
這種有趣的開源語言是學(xué)習(xí)編碼真正的完美選擇。
在這篇文章中,我將介紹一個(gè)最好的編碼語言,學(xué)習(xí)如何制作任何東西!它叫做 Emojicode,是由 Theo Belaire 在 2014 年創(chuàng)建的,它是一種開源的編程語言,使用 emoji 字符來表示其語法。當(dāng)用 Emojicode 開發(fā)時(shí),表情符被用來創(chuàng)建變量、函數(shù)和控制結(jié)構(gòu)。因?yàn)樗且环N靜態(tài)類型的語言,變量類型必須在使用前聲明,但它也支持類和繼承等面向?qū)ο蟮母拍?。這種語言可以在每個(gè)操作系統(tǒng)上運(yùn)行,它是一種超級(jí)有趣的編碼方式,特別是當(dāng)你是一個(gè)非英語母語的人時(shí)。這很有幫助,因?yàn)橄笮伪硎究梢园盐覀兇蠹揖奂谝黄穑屛覀円灶愃茢?shù)學(xué)的方式說同樣的語言。
先決條件
在本教程中,我使用的是基于 Debian 的操作系統(tǒng)。我的工具可能與你的操作系統(tǒng)的要求不同。以下是我所使用的工具:
- ??Geany??,一個(gè) Linux 下的開源 IDE。
- IBus,它允許你挑選表情符并把它們放在你的編輯器中。我使用的界面被稱為 emoji picker。
- 基于 Debian 的 Linux。
- 一個(gè) C++ 編譯器。我使用的是 ?
?g++?
? 編譯器。 - ??Emojicode??
我使用的是 Linux 操作系統(tǒng),但你可以 ??閱讀文檔?? 了解在其他操作系統(tǒng)上使用它時(shí)可能需要采取的任何特殊步驟。
在 Linux 上安裝 Emojicode
有幾種方法可以在你的電腦上安裝 Emojicode,但它們有一個(gè)很酷的 ??神奇的安裝頁面??,可以告訴你具體該怎么做。下面是我的做法:
Emojicode 的安裝過程提供了有用的反饋。
The emojicode installation procedure provides useful feedback along the way.
現(xiàn)在,你已經(jīng)安裝好了,是時(shí)候開始編寫代碼了!
它是怎么運(yùn)作的?
首先,所有 Emojicode 文件的擴(kuò)展名都以文件名 ??.???
? 結(jié)尾,但因?yàn)槟悴荒茉谝话愕奈募羞@樣做,所以它被翻譯成 ??filename.emojic?
?。這里是最重要的語法元素:
- 把 ?
????
? 放在一行的開頭,表示要執(zhí)行哪些代碼塊 - 用 ?
????
? 開始一個(gè)代碼塊 - 用 ?
????
? 來結(jié)束一個(gè)代碼塊 - 想打印什么嗎?就用 ?
??? ?? <string> ?? ??
?
還有很多其他的,所以這里有一些實(shí)際的例子。
打印一首俳句
首先,試著打印一首漂亮的俳句來玩玩吧! 在這個(gè)例子中,我將添加一行注釋。看看你是否能識(shí)別它。
現(xiàn)在我們需要保存我們的代碼,并通過我們的編譯器運(yùn)行它,使之成為一個(gè)漂亮的可執(zhí)行文件:
正如你所看到的,代碼已經(jīng)被編譯并生成了兩個(gè)文件,其中一個(gè)是可執(zhí)行的。運(yùn)行 ??haiku?
? 文件:
數(shù)學(xué)和變量操作
接下來,你要同時(shí)做幾件事:一點(diǎn)點(diǎn)數(shù)學(xué)和變量的改變。首先,將一個(gè)變量賦值為 0:
你剛剛使用蠟筆(?????
?)表情符、新建(?????
?)表情符和變量名稱創(chuàng)建了一個(gè)新變量,同時(shí)還將該變量賦值為 0。
接下來,用磁鐵(?????
?)表情符打印一行包括該變量的內(nèi)容:
接下來,使用加號(hào)(????
?)和箭頭(?????
?)表情符改變變量:
然后打印另一行的值。如此這般,然后打印出最終的數(shù)值。如下:
接下來,用 ??emojicodec?
? 編譯代碼,然后用你的可執(zhí)行代碼來看看結(jié)果:
如你所見,作為變量打印出來的所有內(nèi)容都已使用新數(shù)學(xué)進(jìn)行了更新。你可以用許多數(shù)學(xué)表情符來進(jìn)一步操作。下面是一些更多的運(yùn)算符:
Emojicode 的怪癖
當(dāng)我在文檔中來回查看時(shí),我發(fā)現(xiàn)了一些有趣的怪癖。其中之一是,當(dāng)從用戶那里抓取輸入時(shí),由于一些已知的編譯器問題,耳朵的膚色很重要。
獲取用戶輸入的動(dòng)作是這樣的:
獲取和分配用戶輸入的操作是這樣的:
我試圖讓它工作,我的編譯器出現(xiàn)了一些問題,我發(fā)現(xiàn)了這個(gè)問題。你也可能會(huì)在這里和那里遇到一些小問題。如果你遇到了,請(qǐng)創(chuàng)建一個(gè) ??議題??,這樣它就有可能被修復(fù)。
沒有技巧,只有很棒的代碼
雖然我可以介紹更多內(nèi)容,但我可以向你保證,這段令人驚嘆的代碼背后的文檔非常豐富。盡管我寫這篇文章只是為了趕上愚人節(jié)的樂趣,但我不得不承認(rèn)這是有史以來最好的語言之一,因?yàn)樗虝?huì)了你很多非常真實(shí)的編程概念。我懇切地建議把它作為一種有趣的方式來教你的一些朋友、孩子,或者是對(duì)編碼感興趣的同學(xué)。希望你度過了一個(gè)充滿樂趣的愚人節(jié)!