Can you recommend any programming resources or glossaries to explain computer science jargon and terminology for Newbies / Laymen?
-
I am currently teaching myself to code and what I find is that I am quite happy but challenged buy the coding experience but everyday I face the roadblock of new jargon and terminology that takes me a step back or two. If you Google something you are often faced with more unhelpful jargon that is discouraging. Here is the result of a search that I used to try and understand âObject Orientated Programmingâ. I have highlighted all the terms that I consider to be jargon and need further clarification âObject-oriented programming (OOP) is a programming paradigm that represents concepts as "objects" that have data fields (attributes that describe the object) and associated proceduresknown as methods. Objects, which are usually instances of classes, are used to interact with one another to design applications and computer programs.â I am only just getting my head around the concept of OOP but descriptions such as the above donât really help! Is there a website or resource that is useful for explaining programming concepts for newbies and laymen that doesnât dumb down? I am looking for something that is not language specific and can explain everything from databases to command line to interpreters to compilers to framework to web app to syntax to classes to functions etc! Thanks!
-
Answer:
http://www.catb.org/jargon/ A bit dated but helpful. Anyway, I'll try to explain OOP. Computer programs have two things: data and procedures. Data is, well, data. Information. Procedures are things you can do with the data. For a long time, people kept the data and the procedures in different places. That got very confusing. OOP puts the data and the procedures together, making it a lot easier to avoid confusion. A class is a description of what procedures and data are in a kind of object (we'd say a class of object, once you understand what a class is).
Eric Pepke at Quora Visit the source
Other answers
Start small, friend. You can't expect to understand any advanced technology all at once. Computer programming just happens to be the most accessible of technologies. I hope, here, you have some knowledge of programming. If not, I'll direct you to courses on https://www.khanacademy.org/cs/tutorials/programming-basics or elsewhere to understand basic terms like variables, functions, etc. Once you do that, come back to OOP. Here's how I do my learning, whatever the field be: Reading Object-oriented programming (OOP) is a programming paradigm that represents concepts as "objects" that have data fields (attributes that describe the object) and associated proceduresknown as methods. Objects, which are usually instances of classes, are used to interact with one another to design applications and computer programs.â Ok, I'm here looking for OOP. Now comes the terms programming paradigm. It looks like some group to which OOP belongs. Who cares about the group? For now, I'll focus on OOP, and consider the term "programming paradigm" as a black box, whose internals I'll check later. Okay, now comes objects. Clearly OOP sees things as "objects". What are objects? Reading on, it contains "data fields and procedures (known as methods)". Woah. Now we come to the core, and here I'll look up what data fields are and what procedures are. Methods are just a label for procedures, for now. Now, it says Data fields. So they must be variables. Move on. Now, I look up procedures: http://en.wikipedia.org/wiki/Procedure. Hey! The last line says procedures are also known as functions, which I already know about. So when functions go inside objects, they are called methods! If there's anything more to that, I'll think about it later. Now, in the next line comes classes. I scan through the https://en.wikipedia.org/wiki/Class_(computer_science) page and see blah blah blah.. technical gibberish... blah blah blah... Classes define the https://en.wikipedia.org/wiki/Data_type of their instances. Yes! From what I know of variables, I can see classes are something like int, double, string, and objects are the variables of those types. If there's anything more, I'll see about that later. So far, here's what I understand: objects are variables containing more variables and even functions! And that is what an object means in a nutshell. So the mythical resource that you are looking for is yourself. When you find yourself overloaded with jargon, step back, focus on a few terms that seem relevant to you. Once you have those terms down, look code examples of those things and then proceed to advanced code examples before going back to the jargon. Once I have enough practice creating classes and objects, I'll go back to the definitions of class and methods to see if there are any nuances I need to know, and if I understand the definitions better. In this case, once I have a good enough understanding of OOP to see how to apply it to problems, then I'll go back to see what a programming paradigm is and then see if there are any others in that group I should know of. The key question: before I start coding, is it essential that I understand what this term means? I dunno. How do I find out? Only one way: start coding. Just a short list of terms that you don't need to bother yourself with right now: compiler, interpreter, imperative, declarative, -paradigm, -typed... tl;dr: If I see too much jargon, I'll consider some of the terms to be http://en.wikipedia.org/wiki/Black_box (that page is itself full of gibberish - essentially, I don't understand what this thing really is, but for now I'll take it for granted and come back later). The key point is that you do come back later. Side note: This is especially useful in college - if you miss some lectures, in the next ones you attend, note down any terms mentioned that you don't understand as http://en.wikipedia.org/wiki/Black_box, and look them up later.
Murukesh Mohanan
Related Q & A:
- Is it possible to major in computer science and management of infosystems and minor in computer programming?Best solution by Yahoo! Answers
- What jobs can I get if I major in mathematics and/or computer science?Best solution by payscale.com
- What is Computer Science? Can someone please explain to me?Best solution by seas.gwu.edu
- What is the difference between computer science and computer programming?Best solution by wiki.answers.com
- What is the difference between Computer Programming and Computer Science?Best solution by wiki.answers.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.