381x Filetype PDF File size 0.45 MB Source: cshao.me
CSE 199 – IRC Chat Server in Go Programming Language
Why IRC Server?
Why this project? By learning Golang through implementing
The goal of this project is to create an IRC server, this project also teaches
a functional IRC Server using Go basic TCP/IP network protocols, iterative
Programming Language (Golang). Golang programming, and concurrency.
is a new compiled and concurrent - Learn basic packet sending and
receiving through TCP.
system programming language that is - Able to build a basic chat room, then
modeled off of C. implement features of IRC Specs
- Goroutines provide a simple way to
Benefits of Golang: implement concurrency with chat rooms
- Concurrency and users
- Type and Memory Safe
- Automatic Garbage Collection What I’ve learned
Disadvantage of Golang: - Golang is really new, and the memory
- No Generics model hasn’t been completely defined,
- New, not refined especially with Goroutines.
- Without Goroutines, IRC would be a
- No type inheritance lot harder to implement as parallel
- No method overloading threads is complicated.
- Not knowing whether variables are
allocated in stack or heap makes
Tools it not follow standards, but is quite
Go Programming Language interesting as it has a better
Git and Github for version control memory management from the garbage
Irssi – IRC Client for testing collector
server connections
no reviews yet
Please Login to review.