(25.01.2026 tarihinde oluşturuldu.)
1. Uç birimden yeni bir proje oluşturma (cli isimli bir klasör ve içinde gerekli dosyalar oluşturulacaktır. cli/bin/cli.dart dosyası main() fonksiyonumuzun olduğu ana dosyamızdır)
dart create cli2. Giriş noktası /cli/bin/cli.dart içerisinde void fonksiyonu
void main(List<String> arguments) {
print('Hello world');
}dart runconst version = '0.0.1'; // Add this line
void main(List<String> arguments) {
if (arguments.isEmpty) {
print('Hello, Dart!');
} else if (arguments.first == 'version') {
print('Dartpedia CLI version $version');
}
}dart bin/cli.dart versionDartpedia CLI version 0.0.1import 'dart:io'; // Add this line at the top
void main(List<String> arguments) {
if (arguments.isEmpty || arguments.first == 'help') {
printUsage();
} else if (arguments.first == 'version') {
print('Dartpedia CLI version $version');
} else if (arguments.first == 'search') {
// Add this new block:
final inputArgs = arguments.length > 1 ? arguments.sublist(1) : null;
searchWikipedia(inputArgs);
} else {
printUsage();
}
}
void printUsage() { // Add this new function
print(
"The following commands are valid: 'help', 'version', 'search <ARTICLE-TITLE>'"
);
}
void searchWikipedia(List<String>? arguments) {
final String articleTitle;
// If the user didn't pass in arguments, request an article title.
if (arguments == null || arguments.isEmpty) {
print('Please provide an article title.');
// Await input and provide a default empty string if the input is null.
articleTitle = stdin.readLineSync() ?? '';
} else {
// Otherwise, join the arguments into the CLI into a single string
articleTitle = arguments.join(' ');
}
print('Looking up articles about "$articleTitle". Please wait.');
print('Here ya go!');
print('(Pretend this is an article about "$articleTitle")');
}import 'dart.io' çekirdek kütüphanelerden biridir. Konsol ortamında kullanıcıdan girdi beklemek için kullanılır. stdin.readLineSync()
?? '' ifadesinde ?? null birleştirme operatörü olarak ifade ediliyor. Eğer stdin.readLineSync() null dönerse onun yerine boş string '' gönderecektir.