Skip to content

omrfrkzu/minitalk

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

17 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Linkedin 42

HakkındaNasıl KullanılırZorunluBonusNorminetteKatkıda BulunmaLisans

HAKKINDA

Bu, UNIX sinyallerini kullanarak iletişim kuran bir sunucu/istemci sistemidir. Sunucu, PID'sini gösterir ve gelen sinyalleri karakterlere dönüştürerek görüntülerken; istemci mesajları şifreler ve sunucunun PID'sine SIGUSR1 veya SIGUSR2 sinyalleri gönderir.

NASIL KULLANILIR

1º - Depoyu klonlayın

git clone https://github.com/omrfrkzu/minitalk

2º - Proje klasörüne girin ve make komutunu çalıştırın

cd minitalk/minitalk
make

3º - Sunucuyu çalıştırın ve PID'sini kopyalayın

./server
./server_bonus

4º - Başka bir terminal açın, client veya client_bonus'u çalıştırın, pıd'yi yapıştırın ve bir mesaj yazın

./client [SERVER PID] [MESSAGE]
./client_bonus [SERVER PID] [MESSAGE] [EMOTE]

MAKEFILE KURALLARI

make - Minitalk mandatory dosyalarını derler.

make bonus - Minitalk bonus dosyalarını derler.

make all - mandatory + bonus dosyalarını derler.

make clean - Tüm .o (nesne dosyalarını) siler.

make fclean - Tüm .o (nesne dosyalarını) ve .a (çalıştırılabilir) dosyalarını siler.

make re - fclean + all kurallarını uygular.

ZORUNLU (MANDATORY)

  • Server ve client çalıştırılabilir dosyalarını üretin.
  • Client, parametre olarak geçen bir stringi, işlem kimliği (PID) ile belirtilen servera iletmeli ve görüntülemelidir.
  • Sadece SIGUSR1 ve SIGUSR2 sinyallerini kullanın.

BONUS

  • Alım onay sistemi ekleyin.
  • Unicode karakterleri destekleyin.

NORMINETTE

42 Okulu'nda neredeyse her projenin, okulun kodlama standartı olan Norm'a uygun olarak yazılması beklenir.

- `for`, `do...while`, `switch`, `case`, `goto`, üçlü (ternary) operatörler veya değişken uzunluktaki diziler kullanılamaz;
- Her fonksiyon maksimum 25 satır olmalıdır (fonksiyonun süslü parantezleri hariç);
- Her satır, yorumlar dahil, en fazla 80 karakter genişliğinde olmalıdır;
- Bir fonksiyon en fazla 4 isimlendirilmiş parametre alabilir;
- Aynı satırda hem atama hem de tanımlama yapılamaz (statik olanlar hariç);
- Bir fonksiyonda 5'ten fazla değişken tanımlanamaz;
- ...
  • 42 Normları - 42 kod normları hakkında bilgi. PDF
  • Norminette - Kod normuna uyumu kontrol eden araç, 42 tarafından yapılmıştır. GitHub
  • 42 Header - Vim için 42 başlık eklentisi. GitHub

KATKIDA BULUNMA

Eğer herhangi bir sorun bulursanız veya geliştirme öneriniz varsa, bu depoyu forklayıp bir issue açabilir ya da bir pull request gönderebilirsiniz.

LİSANS

Bu proje MIT Lisansı altında mevcuttur. Daha fazla bilgi için lütfen LICENSE dosyasına bakın.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published