Welcome, Guest: Register On Nairaland / LOGIN! / Trending / Recent / New
Stats: 3,150,720 members, 7,809,733 topics. Date: Friday, 26 April 2024 at 02:05 PM

Programming - What About Newbies Like Me? - Programming (2) - Nairaland

Nairaland Forum / Science/Technology / Programming / Programming - What About Newbies Like Me? (7219 Views)

A Little Tip For Notepad++ users Like Me. / [Help Request ] I Want To Learn Programming, what are the requirements / I Want To Learn Computer Programming, What Language Should I Learn First? (2) (3) (4)

(1) (2) (3) (Reply) (Go Down)

Re: Programming - What About Newbies Like Me? by sbucareer(f): 5:22pm On Feb 28, 2006

da808cutie, BlueJ is straight forward if you understand UML particularly Class Diagram.   


Quick Note
=============

1. ----------------> Association to object causing dependency

2. <------------------> bidirectional association

3. ------------------- Association

4. ---------------<> Aggregation

5. ---------------<@> Composition (@ = Black diamond)

6. ----------------|> Inheritance - Generalization

7. <|--------------  Inheritance - Specialization

8. -----------------O Interface


Re: Programming - What About Newbies Like Me? by mimohmi(m): 5:20am On Mar 11, 2006
da808cutie, Bluej is a very simple IDE. Getting used to it shouldn't be diffcult, in fact
that's what i use on my linux box. It has tutorial to get you started fast. Can you
just post what exactly is the problem you are having with it. I am watching
Have a lovely and error free weekend.
Re: Programming - What About Newbies Like Me? by Seun(m): 3:06am On Mar 22, 2006
Consider python. It's really sweet. I heard that Ruby is similar to python but has some advantages.
Re: Programming - What About Newbies Like Me? by Nobody: 9:42pm On Mar 25, 2006
Seun, u are really funny. u make faces at C++, and now u mention python? hah! Python look like c++, too: it was made for ppl who have a background in c/c++.

@gbenjaijot: Look for a C++ IDE called DevC++, by Bloodshed software. It has all the headers, an online community for support, and is based on GNU MinGW - its free. It also has extensions by members of the community. Also, to speed up your GUI development, theres a free class library by the name of wxWidgets (an analogue to Microsoft MFC): this combination rocks!
Re: Programming - What About Newbies Like Me? by Seun(m): 10:02pm On Mar 25, 2006
Hello world in C++:
#include <iostream.h>
int main()
{
cout << "Hello, World\n";
return -1;
}

Hello world in python:
print"hello world"

You tell me, are they at all similar?
Re: Programming - What About Newbies Like Me? by Nobody: 4:34am On Mar 26, 2006
that's only a bit of python. file/directory manipulation, naming conventions, case sensitivity etc are the same.

python just happens to be an i[b]nterpreted[/b] language, so that as soon as you type code, you can do break-and-continue. python interpreter is python interpreter, but c++ needs header files cos its extensible, and has to be compiled, cos the target machine may not be the one on which code was written. havent you noticed that interpreted languages dont need header files? (think VB), Even java has to say "import xyz!"
Re: Programming - What About Newbies Like Me? by Seun(m): 5:02am On Mar 26, 2006
Gridlock, I've been programming on and off since 1991 so please don't insult my intelligence. What you are saying is complete nonsense. Python and C++ have absoutely nothing in common.

On the other hand, you may be confusing PHP and python since PHP shares some syntax elements with C++. Even then, your assertion will still be rubbish because the difficulty and pickiness of PHP and C++ cannot be compared despite the superficial similarities in structure.

Please, if it's a joke, stop it before you are banned. I am a trigger-happy moderator. angry angry
Re: Programming - What About Newbies Like Me? by Ynot(m): 5:49am On Mar 26, 2006
So people just get banned because they argue with you? I shoulda seen this coming!!!
Re: Programming - What About Newbies Like Me? by Seun(m): 5:57am On Mar 26, 2006
No, they get banned for trolling. Imagine someone bursts in here arguing that a black man can never be as intelligent as a white man just to get a rise out of us. I felt he was just trolling because what he was saying was very ridiculous and I can't believe he actually believes that python and C++ are similar. Wtf?
Re: Programming - What About Newbies Like Me? by rikkyjen(m): 5:57am On Mar 26, 2006
Seun,sometimes I find your decisions extremely irrational,why the heck will you threathen ban because of an arguement, Argggg,You sound like a dictator,do u want people to be Zombie-like on this forum  angry angry angry angry, Irrespective of his opinions,threathening ban is out of it
Re: Programming - What About Newbies Like Me? by Seun(m): 6:01am On Mar 26, 2006
Ok, calm down. I have not banned anybody. Calm down and sorry.
Re: Programming - What About Newbies Like Me? by Nobody: 6:05am On Mar 26, 2006
Okay, so my knowledge of python came from the wrong sources (thanks to bad teachers and reading-without-practice), i am a little more - er - enlightened now. but i still think u shdnt have directed that guy to python. at least not YET.
Re: Programming - What About Newbies Like Me? by Ynot(m): 6:11am On Mar 26, 2006
Seun:

No, they get banned for trolling. Imagine someone bursts in here arguing that a black man can never be as intelligent as a white man just to get a rise out of us. I felt he was just trolling because what he was saying was very ridiculous and I can't believe he actually believes that python and C++ are similar. Wtf?

If someone say that, you should enlighten him/her then tell him to go f**k himself.
Re: Programming - What About Newbies Like Me? by alexis(m): 10:50pm On Dec 22, 2006
I see alot of people are giving you their recommendations which is good. My advice to you is this: Learn to solve problems, your math skills should be good, your ability to reason intelligently will help you alot; when you have these prerequisites, then use computer programming languages to solve computing problems. My mum used to say that there are several ways to cook yam, 1. You can boil it 2. You can fry it 3. You can roast it 4. You can soak it in water and eat it with coconut. You can use about 4 ways to prepare yam.

The samething applies to computer programming. You can use different languages to solve different problems be it Java, C, C++, C Sharp, ASP.NET LISP, Perl, PHP, Python etc. The most important thing to consider is "Which language can solve my problems by meeting all the requirements". Remember, if you have good problem solving skills, you can use any langauge to solve problems.

To answer your question, I will advice you start with something from Adams i.e C. After that move up to Java, Python.
Re: Programming - What About Newbies Like Me? by Taysay(m): 2:14pm On Dec 23, 2006
@Seun
Good day, pls I just want to let you know that, we are all here to learn and NOBODY know's it all, and nobody ever will. So as much as you have done a beautiful thing hosting this site (Forum) , remember that, thats just half of the issue one man can't run a forum all by himself, so we have actually done a good thing by bringing the other half. So u see that take two. So please start employing the spirit of 2gedaness. remember WE is far more stronger than I. I am sorry if this hurts but the truth is the the best gift I can offer you. I had notice u handle a similar issue, irrationally. I kept quite but this time I think I have to voice out. So all the best.
Re: Programming - What About Newbies Like Me? by my2cents(m): 6:59pm On Dec 27, 2006
Come on guys, the guy is a self-confessed newbie and doesn't need you all to overwhelm him with your "knowledge" of computer terms. Just answer the question as asked and stop going off on yeye tangents biko tongue

gbengaijot, if they haven't confused you enough (I hope not wink), dump the certifications and pick up a language on your own. Based on what I have seen on this forum, and speaking for just web dev, stick with php, mysql, dreamweaver, xhtml, css, javascript with a sprinkle of photoshop/fireworks and you should be good to go. I would imagine on the programming side you could stick with JAVA. One thing that will eventually pop out at you (I hope grin) is that in the end, programming is all about logic. If you have the logic down in your head, it doesn't matter what language it is you want to learn. The next paragraph should hopefully vindicate me with respect to the last 2 sentences of this paragraph.

As for lessons, you can either solicit from this forum links to tutorials or you could google for one yourself. I didn't know a lick about PHP when I started using the forum, but thanks to someone on here, I got perhaps one of the best e-books on it to-date. I have even put up my first php-based website. As you learn, give yourself a project and implement what you have learnt, adding a few "crayfish and pepper" extra to ensure you understand what you have learnt. Then invite your peers to check out your work. It doesn't have to be picture-perfect on day one. As they say, na sleep we dey take practice for death.

Again, dump the certifications - sooo out-of-date. Most people cram for it anyways. There is a difference b/w cramming and understanding. Besides, and I speak for the states, I know a few professionals who have been in the game for 10+ years but yet have failed various certifications at least twice. For instance, you can't tell me that a DBA with 20 years experience is stupid and doesn't know what he is doing just because he failed the MCDBA twice.

I hope this helps.
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 11:09am On Dec 28, 2006
@my2cent, i am already starting with java, since its the language i av to learn for my B.sc COmputing. I am in my early stage anyway.

Now, i am thinking of starting a small project to help me learn more. Where i work, we make use of something called productivity sheet. IT is a small program desinged using Microsoft Excel. It computes how many hours you work Monday to friday ( varies) and what you do for each hour of the day. Lets say for example, I do some telephone callings, faxing, typing, Test bookings, other administration  task e.t.c as a day to day activity.  The aim of te spreadsheet productivity is to check the percentage of my productivity.

I seem not to really like the excel sheet method of productiviy, that i want to desinging a productivity software( dont tell me to buy one since i want to use it to learn) that wil enable such capabilities, and also that will be able to track what each employee does as well as the percentage of work they have done. The name of the software that i want to desing will be Produsoft.

I need the help of SBUcareer, mimoh_mi, my2cent and others who are into java programming to help me with class diagram, guides to coding and other necessary steps please.
I have dedicated year 2007 to becoming proficient with java and not learning anyother language or easily influence to put too much in my head.

I have attached a copy of the interface of d one we use at the moment so as to enable clarity and to let u get a grasp of what i mean with relevant sensitive information erased to avoid been sacked, lol.

Please ask questions and i will post answers back here

Re: Programming - What About Newbies Like Me? by sbucareer(f): 12:23pm On Dec 28, 2006

Gbenga, as you want to use this as a case study to your learning programming I'd ask if the application in question would be considered a distributed app (Web) or stand alone app (GUI).

Write a requirement specification or case study I/we will deduce a good software specification for you including UML consisting of Use case, Class diagram and Object diagram.

It would also contain deployment specification or platform recommendations and hardware. From your post above I have a vague idea but the case study is still very ambiguous. Tell us in details what each state does ie.

Voucher Registration
Booking Registration
General Corre
Voucher Request

You need to explain these functions in more detail to us. That is why I said the requirement is vague. When you say compute, what are we talking about? Percentage, Derivatives, means, mode, median? What exert do you mean by compute

What is Admin Time Available, Productivity, staffed Time, break Time, Training Time, Meeting Time, HT Time, Admin Time Available?
Re: Programming - What About Newbies Like Me? by my2cents(m): 12:31pm On Dec 28, 2006
gbenga,

I don't code in JAVA per se. I am a web developer, I use JSP though I guess you could say they r somewhat similar. JSP, in a nutshell, calls JAVA functionality via tags. Anyways here it goes:

I don't know about diagrams, but in terms of classes, I would probably have:

produsoft class (which calls all classes)
employee class
timesheet class (does the calculations)
task class (parent class from which all tasks would inherit - ala job1 extends task)
maybe a time class (abstract class from which 2 subclasses - billable time and non-billable time classes - emerge)
an admin class that would enable you to enter pre-defined jobs

The above are a start. There could be more. I will yield to the more experienced JAVA guys to either add or remove from the abv. After the classes are "approved", the process of defining the methods et al can begin. As I was taught, 90% of ur development is design. Once the design is down, the coding should be a breeze cool

Good luck!!
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 2:09pm On Dec 28, 2006
Whaoooo, thanks SBU and my2cent. I do appreciate it ooo.

Ok answers to your questions:
* I prefer it to be a standalone application. ( at least thats what i plan on using java for for now)

*It should run on a Windows platform , with hardware to be a basic computer running at least windows 2000,128MB ram, 10GB hard drive.lol,

Ok, concerning the state, let me explain what we do. We book in candidates for Health and safety tests, Cisco test, Microsoft test and other certifcations. They make use of different methods of payment, some uses Vouchers( that is where voucher regs comes in), some uses credit card(that is where booking reg comes in) and others just call in to request for information( that is where general corre comes in).



For some stuffs that we do off calls( when we dont take calls) like VAN( we are expected to spend 6 minutes on each van bookings), 10 minutes on each voucher request, 15 minutes on each general corre, 2 minutes on each registration, 2 minutes on prime, and ten minutes on voucher request.

so basically, lets say i did 10 voucher request, each time i enter 10 into the space that says "voucher request", it automatically computes 10*10 = 100minutes, spent. So for each day that i was meant to be in the office for 9 hours, i have spent 100 minutes of it to do voucher request. it then automatically compute the percentage of 100 to 9 hours and tell me my percentage productivity.

i hope i explain clearly.

Admin time available is the total numbers of minutes you are allowed to work in a particular day. it varies from 6-9 hours, break time is the is the amount of minutes you are on break( like i said, our turret dictates this as it automatically logs you out when its time for break), productiovity is the percentage of minutes you worked against your staff time. training time is the amount of minutes you spend in training, meeting time is the amount of minutes you spend in meeting, HT time is the amount of time you spend making fone calls.


Basically like i said earlier on, all details like how many vans you book, how many voucher request, you didi, will be entered intot the system manually by the employee, the Hours work, staff time, break time, training time, meeting time, and ht time, will be entered manually as well, only that our turret that calculates the time used for each of this states, will print out a copy of it and we then enter it manually into the system.

If i am not clear enough, please put more questions or should i say caution me.
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 2:13pm On Dec 28, 2006
May i still state that i am still a newbie ooo. We are only just doing introduction. We are learning types of variables at the moment, and i know the meaning of encapsulation and a bit abt declaring methods, although i dont know when and where. I just want a step by step way of doing it, so that i can learn, so please try as much as possible to simplify things. I know its a bit hard, but it will gladen my heart.
Re: Programming - What About Newbies Like Me? by my2cents(m): 4:52pm On Dec 28, 2006
gbenga,

based on ur above post, i wd strongly suggest you wait till you get to the lecture/lesson on classes. After that, alert this post again to revive the conversation. Right now, my fear is, stuff may be said here that will be over your head. Thatz just my 2 cents in the matter anyway wink
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 6:59pm On Dec 28, 2006
i have learnt classes and methods. The only thing is that i havent done any coding at all. we are only been taught the concepts as well as modify some codes,


I dont mind getting my hands wet. If i dont understand something, then i'll go and research on it and come back. I just want to be 1 step ahead of my mates.
Re: Programming - What About Newbies Like Me? by my2cents(m): 11:44pm On Dec 28, 2006
cool,

so based on what i said earlier, what methods (in pseudo-code) do you think each of those classes will need? For example, the task class could have a "isComplete()" method. Let's take it to the next step. Again, I don't code in JAVA. However, with respect to logic, all languages are the same grin
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 3:06am On Dec 29, 2006
while that poductivity software analysis goes on, here is a little code that needs attention.

Here is a partial implementation of a simple class called Product some instance methods and
variables that are not relevant to the question have been omitted.

/**

* An instance of Product is a simple model of a product stocked in
* a warehouse. Each product has a description and a stock level.
*
* @author The course team
* @version 1.0
*/
public class Product
{

public int stockLevel;
// The number of items of this product in stock which is updated
// by the deliver() and acquire() methods.


public String description;
// The name of the product which will be set to a meaningful value
// by an object of some other class.


/*
*


* Constructor for objects of class Product
*
/
public Product(
)
{


super()
;
this.stockLevel = 0;
this.description = "unknown"
;


}

/**

* Reduce the stock level by the value of the argument
*
/
public void deliver(int anAmount)
{


this.stockLevel = this.stockLevel - anAmount;
}



/**

* Increase the stock level by the value of the argument
*/
public void acquire(int anAmount)
{

this.stockLevel = this.stockLevel + anAmount;
}

/**

* Returns a string giving details of the product
*/
public String productDetails()

{
return "Product " + this.description + ": "
+ this.stockLevel + " in stock."
}
}






I am trying to understand when i have to ensure data hiding and stuffs,
the question goes thus:

Describe and explain the changes you would make to the code for the Product class given
above in order to improve its data hiding and/or to facilitate its maintainability, while at the
same time allowing, where necessary, objects of other classes appropriate access to a
Product object's instance variables. When describing the changes you would make you
should detail whether the change is to improve data hiding, maintainability, or both.
If you decide to change any existing methods, you should include the code for those
methods in your answer.
If you decide to introduce any new methods you do not need to include the code for those
methods in your answer, a simple description will suffice.
Note that we do not want you to give the class any additional functionality.



the answer i gave is below, however, i know i am still missing something as i am still yet clear totally on it all, can you please hep me out with understand the solution:

my own answers:

To enhance both data hiding and maintainabiity, the main public class product which calls other classes needs to remain public, but its instance vaiables i.e public int stockLevel; and public String description needs to be declared private as they are not part of the public behaviour and also since its he objects main mehod that is allowed to access the value of its instance variables, but it exist to enhance the public visible methods. After the constructor for the object of class product is initialised,and the methods are publicly initialised, for the purpose of data hiding, the variable (int anAmount) and public String productDetails needs to be declared private as detailed below:

private void acquire (int anAmount)

private String productDetails()


it is declared private since we do not want any of its attribute to be seen by other instance object.
Re: Programming - What About Newbies Like Me? by sbucareer(f): 10:50am On Dec 29, 2006

Are we doing coursework or are we helping you to develop this case study above? Either case you better make up your mind. Believe me Gbenga, if we do your coursework for you, you have failed the process of inspiring your brain to think as a software developer.

You see the question you asked above, there is no right and wrong answer. I cannot say the answer you've given above is wrong or even right. If I was your teacher I will use the exercise to measure the way pupils think in relation to logic and programming.

Look at my own solution for data hiding and maintenance and accessibility. This is by no means right or wrong just the way I think about it for now. I don't want to go into more complex data encapsulation




public class Product {

private int stockLevel;

private String description;

public Product(){


super();
this.stockLevel = 0;
this.description = "unknown";
}

protected void deliver(int anAmount){
this.stockLevel -= anAmount;
}


protected void acquire(int anAmount) {

this.stockLevel += anAmount;
}


public String productDetails() {
return "Product " + this.description + ": "
+ this.stockLevel + " in stock."
}


public String getDescription(){
return description;
}

public int getStockLevel(){
return stockLevel;
}

public void setStockLevel(int stockLevel){
this.stokLevel = stockLevel;
}

public void setDescription(Strng description){
this.description = description;
}
}



I do not need to explain what I did above at your level now you know that I have hidden the data and made it maintenance easy (Not the best, there are other ways like interface) and accessing the hidden data.

I used protected keyword to allow class members to access it functions. If you hide data too much the software becomes unaccessible and does not make sense. It will force you to use coupling which is very bad practice. Cohesive programming is the best by hiding data to outside classes and provide interface to access other class components. You should know this since you said you now understand encapsulation
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 10:58am On Dec 29, 2006
it aint a course work, but rather a programming excersie that comes with my correspondence materials. I have posted the question, together with my own answers to give you guys an insight into what i know and to see ways in which i can develop my logical abilities.
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 11:14am On Dec 29, 2006
@SBU, thanx so much, i actually got a near answer to yours. I am only suppose to explain where methods need to be private. However, i still need you to explain why you've protected the acquire and deliver methods please,

I'd appreciate it
Re: Programming - What About Newbies Like Me? by sbucareer(f): 11:17am On Dec 29, 2006

@Gbenga I will attend to this topic later tomorrow. By then I will have come up with a use case. We will tackle this as a software development, ok.

Do you understand package in java? It is like directory structure. i.e say lets take your case study for example.

I will a package (directory) called

1. admin
2. classes
3. lib
4. images


All these directories would hold different java classes. Now all java classes say in lib that has a protected keyword in them will see all classes in lib but not admin, classes and images. But the public keywords are seen by all package (directory) Private are not even seen by the same classes in the same package let alone other packages
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 11:23am On Dec 29, 2006
thanx, i'll wait till 2morow. If you come on messenger anyway, i don't mind chatting with you sometime if you don't mind. We go rock this place with java, lol
Re: Programming - What About Newbies Like Me? by gbengaijot(m): 11:43am On Dec 29, 2006
Mmmm, so which means that Private are methods only accessible by the original class that its implemented, protected can be called from within the original class, and any subclass, while the public method can be called by any class.

I do understand that i am a bit slow at learning, but i have decided to push myself to extreme limits in learning programming, so please be patient with my naivety and slow grasping. At least i know myself that i am better off now than months ago, when i started that java programming thread.
Re: Programming - What About Newbies Like Me? by sbucareer(f): 11:44am On Dec 29, 2006

Try this

create two directories on window OS called

1. testing
2. coding


Create two classes i.e.

package testing;

public class Test1{

private int age =1;

protected int getAge(){
return age;
}
}


Second class

package coding;

public class Coding1{

private String address ="Unknown";

protected String getAddress(){
return address;
}
}


Now come out of the directoy where testing and coding is i.e. , \coding and , \testing

practice\coding and practice\testing Come under practice directory and create this class

package practice;

import coding.*;
import testing.*;

public class Demo{

private Coding1 code;
private Testi1 testing;


public static void main (String args[]){
coding = new Coding1();
testing = new Test1();

//Now do
System.out.println(coding.getAddress());
System.out.println(testing.getAge());
}
}

Try and correct the error and tell us if you now understand what is meant by protecting a class for only it class members

(1) (2) (3) (Reply)

Respect Indians O / Difference Between Computer Science And Computer Science Education / 39 Android Apps With Source Code For Beginners To Learn From & Make Their Own

(Go Up)

Sections: politics (1) business autos (1) jobs (1) career education (1) romance computers phones travel sports fashion health
religion celebs tv-movies music-radio literature webmasters programming techmarket

Links: (1) (2) (3) (4) (5) (6) (7) (8) (9) (10)

Nairaland - Copyright © 2005 - 2024 Oluwaseun Osewa. All rights reserved. See How To Advertise. 87
Disclaimer: Every Nairaland member is solely responsible for anything that he/she posts or uploads on Nairaland.