過往我們會用迴圈迭代物件集合,現代語言則提供集合流程(Collection Pipeline)來改善處理:
裡面每項操作(像 map、filter)都接收與送出一個集合,讓人從上而下地了解物件流經步驟。

Replace Loop with Pipeline
flowchart LR
subgraph pipeline ["Collection Pipeline"]
direction LR
A["[1,2,3,4,5]"] --> B["filter<br/>(偶數)"]
B --> C["[2,4]"]
C --> D["map<br/>(平方)"]
D --> E["[4,16]"]
end# Before
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_squares = []
for number in numbers:
if number % 2 == 0:
even_squares.append(number * number)
print(f"Even squares: {even_squares}")
# After
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_squares = [number * number for number in numbers if number % 2 == 0]
print(f"Even squares: {even_squares}")