معرفی رشته علوم کامپیوتر
هدف رشته علوم کامپیوتر تولید دانش و تئوری لازم برای ساخت سخت افزار و نرم افزار های کامپیوتری است. شالوده و زیربنای این رشته ریاضیات است. قبل از اینکه بتوانیم شروع به ساخت هر گونه سخت افزار یا نرم افزار کامپیوتری بکنیم نیاز به دانش داریم و وظیفه علوم کامپیوتر تولید این دانش است.
علوم کامپیوتر بیشتر به مباحث بنیادی مرتبط با کامپیوتر می پردازد. مباحثی مانند طراحی الگوریتم ها، طراحی ساختمان داده های کارا، برنامه نویسی، محاسبه پذیری، معماری کامپیوتر، پردازش های موازی و ... از جمله مباحث مطرح در علوم کامپیوتر است. برای روشن تر شدن موضوع اجازه دهید یک مثال خیلی ساده بزنیم:
فرض کنید 10 عدد داریم و می خواهیم برنامه ای بنویسیم که این اعداد را به ترتیب صعودی مرتب کند. شاید مرتب کردن این اعداد به صورت ذهنی کار ساده ای به نظر برسد ولی چطور گام به گام به کامپیوتر بگوییم که این اعداد را مرتب کند؟ در واقع الگوریتم این کار چیست؟
طی چندین دهه الگوریتم های مختلفی برای همین مسئله ساده ارائه شده است. بعضی از آنها سریعتر و بعضی کندتر عمل می کنند. ارائه الگوریتم های کارا برای مسائلی از این قبیل وظیفه متخصصان علوم کامپیوتر (Computer Scientists) است.
البته مرتب سازی اعداد یکی از ساده ترین مسائل در حوزه علوم کامپیوتر است. شاخه های علوم کامپیوتر بسیار وسیع و متنوع هستند. امروزه بدون شک پیچیده ترین تکنولوژی های کامپیوتری حاصل پیشرفت در علوم کامپیوتر است.
در زیر شاخه های علوم کامپیوتر که به صورت موضوعی دسته بندی شده اند را ملاحظه می فرمایید. بعضی از این شاخه ها مباحث بین رشته ای هستند. مثلا کامپیوترهای کوانتومی یک دانش بین رشته ای است که حاصل تلفیق فیزیک کوانتومی و علوم کامپیوتر است.
هوش مصنوعی (Artificial Intelligence)
شبکه های عصبی مصنوعی (Artificial Neural Networks)
بینایی ماشین (Machine Vision)
یادگیری ماشین (Machine Learning)
یادگیری تقویتی (Reinforcement Learning)
یادگیری احتمالی (Probabilistic Learning)
محاسبات نرم (Soft Computing)mputing)
داده کاوی (Data Mining)
داده کاوی متن (Text Mining)
داده کاوی وب (Web Mining)
محاسبات تکاملی (Evolutionary Computation)
هوش ازدحامی (Swarm Intelligence)
هوش اجتماعی (Social Intelligence)
حیات مصنوعی (Artificial Life)
نمایش دانش و استدلال (Knowledge Representation and Reasoning)
سیستم های خبره (Expert Systems)
ادراک ماشین (Machine Perception)
پردازش زبان های طبیعی (Natural Language Processing, NLP)
نظریه محاسبات (Theory Of Computations)
نظریه زبانها و ماشین ها (Formal Languages and Automata Theory)
نظریه محاسبه پذیری (Computability Theory)
نظریه پیچیدگی محاسباتی (Complexity Theory)
محاسبات علمی (Scientific Computing)
محاسبات نمادین (Symbolic Computation)
فیزیک محاسباتی (Computational Physics)
شیمی محاسباتی (Computational Chemistry)
بیوانفورماتیک (Bioinformatics)
کامپیوترهای کوانتومی (Quantum Computers)
رمزنگاری کوانتومی (Quantum Cryptography)
رمزنگاری پسا کوانتومی (Post-Quantum Cryptography)
محاسبات کوانتومی (Quantum Computing)
الگوریتم های کوانتومی (Quantum Algorithms)
ارتباطات کوانتومی (Quantum communications)
پیچیدگی محاسباتی کوانتومی (Quantum Computational Complexity)
برنامه نویسی کوانتومی (Quantum Programming)
الگوریتم ها و ساختمان داده ها (Algorithms and Data Structures)
الگوریتم های موازی (Parallel Algorithms)
الگوریتم های توزیع شده (Distributed Algorithms)
پیچیدگی زمان و حافظه الگوریتم ها (Time and Space Complexity)
الگوریتم های قطعی و غیرقطعی (Deterministic and non-Deterministic Algorithms)
کاهش (Reduction)
ساختمان داده ها (Data Structures)
الگوریتم های تقسیم و غلبه (Divide and Conquer)
برنامه نویسی پویا (Dynamic programming)
روش های حریص (Greedy Methods)
برنامه نویسی خطی (Linear Programming)
الگوریتم های بازگشت به عقب (Backtracking)
الگوریتم های شاخه و حد (Branch and Bound)
رمزنگاری (Cryptography)
رمزنگاری بصری (Visual Cryptography)
پنهان نگاری (Steganography)
رمزنگاری کلید متقارن (Symmetric-key Cryptography)
رمزنگاری کلید عمومی (Public-key Cryptography)
رمزنگاری کوانتومی (Quantum Cryptography)
زبان های برنامه نویسی و کامپایلرها (Programming Languages and Compilers)
تئوری کامپایلرها (Compiler Theory)
تئوری زبان های برنامه نویسی (Programming Language Theory)
معماری کامپیوتر
منطق دودویی (Binary Logic)
طراحی مدارهای دیجیتالی (Digital Design)
سیستم های توزیع شده (Distributed Systems)
هندسه محاسباتی (Computational Geometry)
تئوری پایگاه داده(Database Theory)



رشته علوم کامپیوتر





