iT邦幫忙

dart相關文章
共有 55 則文章
鐵人賽 Modern Web DAY 13
Flutter web 的奇妙冒險 系列 第 13

技術 Day13 | Dart 中的 Functional Programming

Functional Programming 如果OOP是以物件為主那FP就是以Function作為主體來思考。但也須有人會好奇 Function 這種語法很多...

鐵人賽 Modern Web DAY 12
Flutter web 的奇妙冒險 系列 第 12

技術 Day 12 | Dart 中的 Sound null safety

為什麼我們需要 null safety? 回答這個問題前應該要先了解為什麼會有 null ,如果寫過網頁前端的讀者應該很常看到以下程式碼(以react舉例)...

鐵人賽 Modern Web DAY 11
Flutter web 的奇妙冒險 系列 第 11

技術 Day 11 | Dart 非同步 - Stream

Stream 簡單來說就是一群iterable的非同步事件。 像是每秒輸出一個數字,但是你可能會想說就算我不用 Stream 我也有辦法辦到: Timer.pe...

鐵人賽 Modern Web DAY 10
Flutter web 的奇妙冒險 系列 第 10

技術 Day10 | Dart 非同步 - async/awiat

Async/Awiat 在Dart中我們可以使用 async 來代表這是一個非同步的function Future<String> fetchDat...

鐵人賽 Modern Web DAY 9

技術 Day09 | Dart 非同步 - Future

昨天介紹了在Dart中非同步的基本概念,今天就要來講到如何簡單的控制非同步操作。 Future Future 可以想像成一個盒子一樣,它將 「一個值裝起來直到未...

鐵人賽 Modern Web DAY 8

技術 Day08 | Dart 中的非同步 - Isolate、Event loops

非同步指的到底是什麼? 在解釋非同步(Asynchronous)之前,我們先來聊聊什麼是同步(synchronous) 首先我們需要先知道一件事情是:Dart...

鐵人賽 Modern Web DAY 7

技術 Day 07 | Dart基本介紹 - extends、abstract、mixin

今天繼續來說明class 相關的語法。今天提到的語法又會更抽象一點 extends 所謂繼承就是我們可以使一個類別使用另外一個類別的方法及成員變數來進行程式碼的...

鐵人賽 Modern Web DAY 6

技術 Day 06 | Dart基本介紹 - private & static

在昨天的文章中,講到了類別基礎用法包含了「宣告」、「建構子」及「實體化」,今天會繼續說明Dart class中的其他語法。 私有變數、getter、setter...

鐵人賽 Modern Web DAY 5

技術 Day05 | Dart基本介紹 - class、factory

類別 前面說到 Dart 是一個支援OOP的程式語言(附註*),而不同於JS的Prototype-based,Dart 則是 Class-based,所以在OO...

鐵人賽 Modern Web DAY 4

技術 Day04 | Dart基本介紹 - 變數宣告與基本型別

今天主要會說明 Dart 各種變數宣告的方法及 Dart 的基本型別。 變數宣告 dart主要有四種方式宣告變數 分別為 const var type fin...

鐵人賽 Modern Web DAY 3

技術 Day 3 | Dart 基本介紹 - Dart vs JS

Dart是什麼? Dart 是一個靜態強型別的語言,同時支援物件導向程式設計(OOP)及函數式程式設計(FP)的特性, 而 Dart 正是「Flutter」所使...

鐵人賽 Modern Web DAY 2

技術 Day 2 | Dart 開發環境設定

第二天先來點輕鬆的內容:建立我們的開發環境。 我本身所使用的環境如下: OS:MacOS big sur 11.2 Dart SDK version: 2.12...

鐵人賽 Modern Web DAY 1

技術 Day 1 | 前言與大綱

哈囉我是Todd,是一個比較喜歡寫前端的全端工程師,工作上大部分是使用 React 及 Node.js 來進行開發。 剛好今年參與了一個 Flutter App...

鐵人賽 Mobile Development DAY 4

技術 Flutter體驗 Day 4-Dart CheatSheet (2)

Dart CheatSheet (2) 認識 Dart 程式語言,從官方提供的dart-cheatsheet掌握該語言的特色 Dart CheatSheet G...

鐵人賽 Software Development DAY 30

技術 Day 30:Metadata 以及完賽心得

Metadata 是用來替函數、參數加上註解,在 dart:core/annotations.dart 中提供了兩個 metadata。 @override 當...

鐵人賽 Software Development DAY 29

技術 Dart 29:Dart 也有 Mockito!

物件導向中,public 函數可能會包含了外部相依,這個外部相依物件有可能是來自外部函式庫,沒有辦法直接修改裡面的數值,在我們要測試的項目中,外部相依就會變成一...

鐵人賽 Software Development DAY 28

技術 Day 28:測試你的代碼

在開發程式的時候,無論是用 TDD 開發或是面對遺留代碼 (Legacy code),單元測試都是一個相當重要的工具。單元測試可以協助開發者確認每一個使用情境都...

鐵人賽 Software Development DAY 27

技術 Day 27:讓產生器 (Generator) 來產生一連串的同步或異步資料吧。

如果想要產生一個一組一連串的數值,Dart 提供了產生器函數 (Generator Function)。 產生器函數有兩種,一種是同步產生器 (Synchron...

鐵人賽 Software Development DAY 26

技術 Dart 26:用 import 匯入其他函式庫

在 Dart 中,每一個 *.dart 的檔案,都可以被其他檔案匯入 (import) 進來。無論是自己寫的程式碼,還是第三方的程式庫,都可以用關鍵字 impo...

鐵人賽 Software Development DAY 25

技術 Day 25:擴充方法 (Extension method)

在 Dart2.7 新增關鍵字 extension ,用來替已經存在的類別擴充功能。 例如: toString(),是每一個類別都有的函數,我們若用在整數上,便...

鐵人賽 Software Development DAY 24

技術 Dart 食之無味,棄之可惜

寫在前面 Dart是由google開發的語言 目的是讓同一套程式碼可以跨平台編譯 注意,跟JAVA編譯一次後到處執行是不同的喔,Dart雖然也只需要寫一次程式碼...

鐵人賽 Software Development DAY 24

技術 Day 24:異步處理 Part2-Stream

在 Dart 中有兩種異步類別,一種是 Future ,另一種則是 Stream ,在上一篇我們知道 Future 是針對耗時的工作,在工作完成時才回傳結果。並...

鐵人賽 Software Development DAY 23

技術 Dart23:異步處理

什麼是異步呢? 一般我們執行程式碼都是直接回傳值,這稱為同步;異步跟這行為相反,我們執行程式碼時,也許因為該段程式碼需要花費時間去執行、也或許需要等待資料,這個...

鐵人賽 Software Development DAY 22

技術 Dart 22:將函數定義成型別吧。 (Typedef)

在 Dart 中,所有的項目都是物件 (Object),包括函數 (Functions) 也是物件。我們可以將函數作為另一個函數的回傳值,也可以作為函數的參數。...

鐵人賽 Software Development DAY 21

技術 Day 21:像呼叫函式一樣的呼叫類別吧。(Callable class)

物件導向的基本原則之一:單一職責原則,每一個類別裡它的職責應該只有一個,那麼在這樣的設計底下,很有可能類別只有一個函數。 例如: class Logger{...

鐵人賽 Software Development DAY 20

技術 Day20:泛型 (Generic)

什麼是泛型? 前面介紹 List、Set、Map,它們可以使用不同的型別, 在 List 的 API 文件中,發現它的型別定義為 List;而 Set 是 Se...

鐵人賽 Software Development DAY 19

技術 Day19:靜態變數 (Static variable)、靜態方法 (Static method) 以及 頂層函數 (Top-level functions)

在前面的文章中,我們知道知道每一個類別裡面都包含其屬性及方法,我們必須透過實例化的動作,才能夠取用。 例如: class Log { String messa...

鐵人賽 Software Development DAY 18

技術 Day18:Mixin

什麼是 Mixin? Mixins are a way of reusing a class’s code in multiple class hierarc...

鐵人賽 Software Development DAY 17

技術 Day 17:隱性介面 (Implicit interface)

關於介面 (interface) 介面所表示的意思是:「所有實作出本介面的類別,看起來都應該像這樣」。 Dart 並沒有像其他物件導向語言一樣有關鍵字 inte...

鐵人賽 Software Development DAY 16

技術 Day 16:抽象類別 (Abstract class)

關鍵字 abstract 加在 class 前面,可以讓類別 (class) 成為抽象類別。 成為抽象類別之後,無法被實例化,只能被其他類別繼承。 abstra...