+ Reply to Thread
Page 1 of 2 1 2 Last
Results 1 to 25 of 38
  1. INTJ wedge1988's Avatar
    Join Date
    Jan 2007
    Location
    UK
    Posts
    435
    #1

    Default Programming c# - Longevity?

    Hi Guys,

    I'm currently working on the CCNA, but after i'm done with that i was thinking of going to learn c#

    My question is, if i spend months learning the programming, will it stay around? I mean, I'm MCSE certified, and although microsoft constantly release new operating systems, the base knowledge always is the same, they just change a few names and introduce new features, whilst some older stuff will be phased out?

    So i'm kinda wondering if it is the same for c# or programming in general?

    What i don't want to do is learn it then a few years down the line find that it was worthless...

    see my dilemma?

    Any help would be appreciated
    Reply With Quote Quote  

  2. SS -->
  3. Certification Invigilator Forum Admin JDMurray's Avatar
    Join Date
    Jul 2003
    Location
    Surf City USA
    Posts
    10,596
    Blog Entries
    50

    Certifications
    GSEC, EnCE, CISSP, SSCP, CEH (ANSI), CASP, CCNA, CCENT, CWSP, CWNA, CWTS, Security+, Server+, Network+, A+, DHTI+, PDI+, MSIT InfoSec
    #2
    Programming and software engineering are from a vastly different skill set than network design and administration. In both, what you learn now you will always be able to use in the future. However, software technology does become old (i.e., "legacy") just as networking technology does. Today, you won't find many jobs needing Token Ring experience, just as you (hopefully) won't find many jobs requiring .NET 1.x experience. But there always seems to be a few jobs requiring knowledge of older technology because of legacy systems that need maintaining.

    The problem with programming is nearly the opposite of what you fear--you may be required to learn more, and more quickly, than you want to in order to make a living as a real software engineer. Microsoft especially is constantly adding and changing their software development technology. There are so many (legacy) layers of APIs, and different ways to do the same thing in Windows and .NET, that it's driving me out of developing complex systems and back to writing only simple programs and scripts.

    It a lot of fun (to me) to learn new software systems, APIs, and patterns. But when you are under the pressure of customer-driven deadlines to produce working, high-performance, and bug-free software for immediate delivery, it can be the most life-consuming nightmare that you've ever experienced. Now add to that ill-defined requirements, no formal testing, and poor (or non-existent) project management, you may very well ask yourself, "Why the Hell am I working so hard just to earn a paycheck?" (Welcome to the world of software manufacturing!)

    First, you need to discover if you really like spending most of your time (and brain cells) designing, implementing, and testing code. As I said, it's very different than working in IT (far more complexity and "decision points"). This is why the typical software engineer makes a higher base salary than the average IT network guy--because it's (much) harder work.

    If you want to specialize in Microsoft technologies, then .NET (3.x & 4.0) with C# and VB.NET are the way to go, and with ASP.NET for Web technologies. You'll only need to write code for Windows XP and later. Also learning programming for the various MS products, such as Exchange, SQL Server, and SharePoint, and tools like PowerShell, will make you all the more skilled and valuable to employers.

    Learning all this as a hobby that you do at home after work and on weekends would be an overwhelming task for most people, so best to be working at a place that will let you help out on the coding for an MS-based project being worked on. Study the certifications of the MS technologies that interest you, and take MS programming classes at a local community college.

    At some point, you will realize that either programming is the thing that has been missing from your life, or is the worst thing that you have ever forced yourself to do. If you find yourself somewhere in the middle, consider that programming is something you need to continue to learn, but should not be the primary skill required in your occupation. Having the hands-on experience of how to design and create software-based systems will put you far ahead of your peers in understanding how software drives the behavior of almost every computer-based technology we have today.
    Moderator of the InfoSec, CWNP, IT Jobs, Virtualization, Java, and Microsoft Developers forums at www.techexams.net
    --
    Blog: www.techexams.net/blogs/jdmurray
    LinkedIn: www.linkedin.com/in/jamesdmurray
    Twitter: www.twitter.com/jdmurray
    Reply With Quote Quote  

  4. INTJ wedge1988's Avatar
    Join Date
    Jan 2007
    Location
    UK
    Posts
    435
    #3
    Quote Originally Posted by JDMurray View Post
    At some point, you will realize that either programming is the thing that has been missing from your life, or is the worst thing that you have ever forced yourself to do. If you find yourself somewhere in the middle, consider that programming is something you need to continue to learn, but should not be the primary skill required in your occupation. Having the hands-on experience of how to design and create software-based systems will put you far ahead of your peers in understanding how software drives the behavior of almost every computer-based technology we have today.
    Thanks for the reply JD.

    I've already decided that im not going to be a programmer. It's certainly not what i want to do for a living. But like what you said in the quote above, having c# under my belt will be a large asset in the long run.

    Basically, I want to be able to develop a small program or two when the need arises, without having to get others to develop one or for me to have to buy one. The reason i say this is because I recently came across the need for an application that will allow me to power off machines at night. Now, in most organisations a script will do this.. but working in a school requires a different approach.

    Needless to say, there are programs out there, they cost the earth. Making one.. well if i knew, it wouldnt take me long, it's not a complex thing really?

    Anyway, i've decided to go eventually all the way to csico CCIE / Architect and focus on that side of the IT administration.. thats my passion, not programming lol. - so c# ? A benefit but not a life.
    Reply With Quote Quote  

  5. Certification Invigilator Forum Admin JDMurray's Avatar
    Join Date
    Jul 2003
    Location
    Surf City USA
    Posts
    10,596
    Blog Entries
    50

    Certifications
    GSEC, EnCE, CISSP, SSCP, CEH (ANSI), CASP, CCNA, CCENT, CWSP, CWNA, CWTS, Security+, Server+, Network+, A+, DHTI+, PDI+, MSIT InfoSec
    #4
    Quote Originally Posted by wedge1988 View Post
    Basically, I want to be able to develop a small program or two when the need arises, without having to get others to develop one or for me to have to buy one. The reason i say this is because I recently came across the need for an application that will allow me to power off machines at night. Now, in most organisations a script will do this.. but working in a school requires a different approach.
    Consider the adage, "The right tool for the right job." Programming languages and environments are just tools; there is no tool that is right for every job. C# is a tool that is best used for building medium- to large-scale systems on Windows, and is overkill for most smaller jobs where a scripting language would be the most efficient solution.

    Most languages worth knowing have a free development environment available, and it's worth learning a language that easily portable between different operating systems, and that you can write code in very quickly. Languages like C#, C++, and Java are best utilized by first creating a detailed design of the program you are writing. This is not something you want to do if you just need to "bang out" a small, useful program very quickly. Programmers tend to use languages like Perl or Python for quick jobs.

    One major issue in choosing a language to use is considering that the run-time environment of the language must be installed on all of the machines that the program will run. Every Windows box will run MS C/C++, VBScript, Intel assembly, and DOS batch programs, but all other languages require the proper version of a specific run-time environment be installed first--including C# and .NET.

    Find a programming language that best fits your brain and start writing network management programs that talk to Cisco equipment. That way you'll be learning both sides of the street at the same time.
    Moderator of the InfoSec, CWNP, IT Jobs, Virtualization, Java, and Microsoft Developers forums at www.techexams.net
    --
    Blog: www.techexams.net/blogs/jdmurray
    LinkedIn: www.linkedin.com/in/jamesdmurray
    Twitter: www.twitter.com/jdmurray
    Reply With Quote Quote  

  6. Objectives my friend! varelg's Avatar
    Join Date
    Jul 2009
    Location
    Santa Fe, NM
    Posts
    784

    Certifications
    RHCSA
    #5
    Quote Originally Posted by wedge1988 View Post
    Hi Guys,

    I'm currently working on the CCNA, but after i'm done with that i was thinking of going to learn c#

    My question is, if i spend months learning the programming, will it stay around? I mean, I'm MCSE certified, and although microsoft constantly release new operating systems, the base knowledge always is the same, they just change a few names and introduce new features, whilst some older stuff will be phased out?

    So i'm kinda wondering if it is the same for c# or programming in general?

    What i don't want to do is learn it then a few years down the line find that it was worthless...

    see my dilemma?

    Any help would be appreciated
    Murray put it concisely and there's really very little to add to his post. At first sight however, your move to c# would look more like a career change since c# is systems programming, which most admins don't consider immediately applicable for the kind of problems that they solve.
    The demand for new features of the app that you mentioned will grow, it's almost guranteed, today maybe it is just shutting down school computers but tommorow some user may come with a need to extend its functionality for say, intranet messaging or saving its data in a specific way so that he/she can access it off- site. I am just naming examples, it won't be necessarily that way, but extending functionality of your app is inevitable.
    I am sure plenty of us here would be quick to scorn on/dismiss cloud computing as anything more than a catch phrase du jour, but as a new way of deploying applications you just can't dismiss it. I don't think cloud will take over everything 100%, but people consider it more and more and some companies that develop operating systems incorporate increasing number of outlets to cloud (I am looking at Canonical and its Ubuntu One) within their products. Cloud apps break the platform dependence and execute across all platforms that support web connectivity. Sort of what original makers of Java and C# had in mind when they were making those technologies.
    Reply With Quote Quote  

  7. INTJ wedge1988's Avatar
    Join Date
    Jan 2007
    Location
    UK
    Posts
    435
    #6
    Ah ok, great examples guys. Thanks for your help!

    We mainly use windows systems, so it would have to be vbscript / c/c++ i suppose.

    C++ is by far the hardest language i'd imagine, but would be the most beneficial in the long run? I've had a go at visual basic.net which isnt too bad.

    the only reason i thought of c# was because it can be used with sharepoint and many other uses, like xbox game development (This is obviously personal stuff)

    but you would reccommend python or vbscript then?

    -Edit

    By the way, Microsoft say they are moving away from vbscript, as to move to Powershell. Powershell is supposed to be the new defaco for system admins for both dos and vbscript, which is simplified?
    Last edited by wedge1988; 10-30-2010 at 05:50 PM. Reason: added stuff :3
    Reply With Quote Quote  

  8. BOBBY_TABLES RobertKaucher's Avatar
    Join Date
    Dec 2007
    Location
    Lebanon, Ohio - USA
    Posts
    4,274

    Certifications
    MCSD Web Apps/SharePoint Applications, MCITP: DBA 2005/2008, EA, EDA7, Linux+, Sec+, MCSE, MCDST, MCTS
    #7
    Wedge,

    My job kind of spans the world of the developer and the sys admin. It's a special case so I am going to share my experience with you. I knew about 3 years ago that SharePoint was going to be growing in popularity and that it was an excellent resource for surfacing SQL Server data (reports, etc). I also knew that I would have to learn C#, SharePoint and SQL Server well - although each to lesser degrees. On a small tangent I also believe that any person who works with SQL Server should also know a .NET language such as C#. If you are not working in a role such as this putting the effort into really learning C# might just not be worth it. Learning some of the basics, might be ok. But that makes it more a professional hobby than an actual skill.

    If you see yourself as a sys admin or network admin it would be wise to just put the time and effort into learning PowerShell well. I can tell from your other posts it is not something you have a lot of experience with. But it is being integrated into every new server technology MS is putting out and is a core component of the Windows Management Framework.

    10 reasons why you should learn to use PowerShell | 10 Things | TechRepublic.com
    PowerShell - Why you should learn PowerShell | Black Mountain

    If you consider the time and effort required to develop a decent level of skill in C#, I would argue you will get more from your investment in PoSh. I just took the Silverlight Developer beta certification today. It was a hard test and helped me to put how much I don't know into perspective. It takes a lot to keep the skills required to be a sys admin, DBA, and dev sharp. But one day at work I might be asked to configure some unusual setting in DNS and the next I'm being asked to develop a WCF web service to allow the communication of an SSIS job and a Silverlight web part (oh yeah, and I'm developing the web part to be surfaced in SharePoint as well). I feel my sys admin knowledge getting rusty - and my developer skills are still very green... It's almost like I'm just a guy who's not a very good sys admin and not a very good developer. On a certain level that sucks.
    Reply With Quote Quote  

  9. Certification Invigilator Forum Admin JDMurray's Avatar
    Join Date
    Jul 2003
    Location
    Surf City USA
    Posts
    10,596
    Blog Entries
    50

    Certifications
    GSEC, EnCE, CISSP, SSCP, CEH (ANSI), CASP, CCNA, CCENT, CWSP, CWNA, CWTS, Security+, Server+, Network+, A+, DHTI+, PDI+, MSIT InfoSec
    #8
    If you are gonna admin modern Microsoft Windows enterprise networks then you need to know PowerShell. Server 2008 and AD, Exchange 2010, Windows Vista and 7, and everything after uses it.
    Moderator of the InfoSec, CWNP, IT Jobs, Virtualization, Java, and Microsoft Developers forums at www.techexams.net
    --
    Blog: www.techexams.net/blogs/jdmurray
    LinkedIn: www.linkedin.com/in/jamesdmurray
    Twitter: www.twitter.com/jdmurray
    Reply With Quote Quote  

  10. BOBBY_TABLES RobertKaucher's Avatar
    Join Date
    Dec 2007
    Location
    Lebanon, Ohio - USA
    Posts
    4,274

    Certifications
    MCSD Web Apps/SharePoint Applications, MCITP: DBA 2005/2008, EA, EDA7, Linux+, Sec+, MCSE, MCDST, MCTS
    #9
    Quote Originally Posted by JDMurray View Post
    First, you need to discover if you really like spending most of your time (and brain cells) designing, implementing, and testing code. As I said, it's very different than working in IT (far more complexity and "decision points"). This is why the typical software engineer makes a higher base salary than the average IT network guy--because it's (much) harder work.

    If you want to specialize in Microsoft technologies, then .NET (3.x & 4.0) with C# and VB.NET are the way to go, and with ASP.NET for Web technologies. You'll only need to write code for Windows XP and later. Also learning programming for the various MS products, such as Exchange, SQL Server, and SharePoint, and tools like PowerShell, will make you all the more skilled and valuable to employers.
    And I would add requires much more specialized knowledge.
    Reply With Quote Quote  

  11. Virtual Member undomiel's Avatar
    Join Date
    Sep 2007
    Location
    Bellevue, WA
    Posts
    2,813

    Certifications
    MCSA:2008, VCP4/5, CCA (XS), MCITP: EA/VA, MCSE, MCSA, Linux+, Security+, Server+, A+
    #10
    I'm most certainly not a developer but recently I decided to go ahead and learn C#. So far I haven't found it too difficult to pick up. I definitely think that some of the principles you pick up from learning how to program can help you understand some of the server and networking technologies that you work with since you have a bit of a clue of what goes on behind the scenes. I've found C# to be a lot easier and faster to work with than C++. I've already put it to use for a few small utilities at work which would have taken a lot longer for me to put together with C++. If you're just going to go for scripting though then PowerShell is what you'll want to go for since everything recent out of Microsoft is coming with PowerShell interfaces. Knowing PowerShell has certainly made working with Exchange easier.
    Reply With Quote Quote  

  12. Senior Member
    Join Date
    Jun 2007
    Posts
    440

    Certifications
    A+, Net+, MCDST, CCENT, MCTS: Win 7 Configuring, CCNA, CWTS, CCNA Voice, A.A.S. in Networking
    #11
    Isn't powershell object oriented and based on the .Net framework? Wouldn't that mean skills learned in playing around with C# be valuable in learning powershell?
    Reply With Quote Quote  

  13. BOBBY_TABLES RobertKaucher's Avatar
    Join Date
    Dec 2007
    Location
    Lebanon, Ohio - USA
    Posts
    4,274

    Certifications
    MCSD Web Apps/SharePoint Applications, MCITP: DBA 2005/2008, EA, EDA7, Linux+, Sec+, MCSE, MCDST, MCTS
    #12
    Quote Originally Posted by gosh1976 View Post
    Isn't powershell object oriented and based on the .Net framework? Wouldn't that mean skills learned in playing around with C# be valuable in learning powershell?
    For a sys admin that might be putting the cart before the horse.

    Also, I hope JD is going to explain why PoSh is not truely OO.

    Although you can now write OO style code using PSClass - Object Oriented Scripting in Powershell
    Reply With Quote Quote  

  14. INTJ wedge1988's Avatar
    Join Date
    Jan 2007
    Location
    UK
    Posts
    435
    #13
    wow, okay. thanks all! - erm. so ill learn powershell first. actually on second thought, learning powershell first will help me learn c# later if i feel it's the right path, and, might even give me an inclininto how c# works.

    Knowing the code definitely will help understand the under core of programs.
    Reply With Quote Quote  

  15. Command Line Ninja Chris:/*'s Avatar
    Join Date
    Apr 2010
    Location
    In the void
    Posts
    657

    Certifications
    NSTISSI (4012 & 4011), eCPPT, CEH, CHFI, EDRP, CWSP, CWNA, RHCSA, VCP 3, G2700, GSEC, CIW:SP:WFA, Security+, Network+, A+
    #14
    As a System Administrator if you work with primarily Windows I would recommend learning PowerShell. PowerShell's syntax was based primarily on Perl which is both good and bad. The good is that you can pick up Perl very quickly after learning PowerShell, the bad thing is that it uses Perl's Syntax.

    If you are ever going to work with Linux/Unix systems you need to learning Bash, Sed and Awk scripting. The reason I suggest those more than Perl is that some systems you will find in the corporate environment may be running versions of Unix that do not support Perl, Python or Tcl.

    The rest of the information was already nicely summarized.
    Reply With Quote Quote  

  16. Certification Invigilator Forum Admin JDMurray's Avatar
    Join Date
    Jul 2003
    Location
    Surf City USA
    Posts
    10,596
    Blog Entries
    50

    Certifications
    GSEC, EnCE, CISSP, SSCP, CEH (ANSI), CASP, CCNA, CCENT, CWSP, CWNA, CWTS, Security+, Server+, Network+, A+, DHTI+, PDI+, MSIT InfoSec
    #15
    Quote Originally Posted by Chris:/* View Post
    ...the bad thing is that it uses Perl's Syntax.
    All those dollar signs. Missing or misplaced $, they are 50% of my run-time errors. Same with PHP too.
    Moderator of the InfoSec, CWNP, IT Jobs, Virtualization, Java, and Microsoft Developers forums at www.techexams.net
    --
    Blog: www.techexams.net/blogs/jdmurray
    LinkedIn: www.linkedin.com/in/jamesdmurray
    Twitter: www.twitter.com/jdmurray
    Reply With Quote Quote  

  17. Command Line Ninja Chris:/*'s Avatar
    Join Date
    Apr 2010
    Location
    In the void
    Posts
    657

    Certifications
    NSTISSI (4012 & 4011), eCPPT, CEH, CHFI, EDRP, CWSP, CWNA, RHCSA, VCP 3, G2700, GSEC, CIW:SP:WFA, Security+, Network+, A+
    #16
    Yup and if you have to read someones code that has "optimized" it the output looks like hieroglyphics.
    Reply With Quote Quote  

  18. Certification Invigilator Forum Admin JDMurray's Avatar
    Join Date
    Jul 2003
    Location
    Surf City USA
    Posts
    10,596
    Blog Entries
    50

    Certifications
    GSEC, EnCE, CISSP, SSCP, CEH (ANSI), CASP, CCNA, CCENT, CWSP, CWNA, CWTS, Security+, Server+, Network+, A+, DHTI+, PDI+, MSIT InfoSec
    #17
    Quote Originally Posted by Chris:/* View Post
    Yup and if you have to read someones code that has "optimized" it the output looks like hieroglyphics.
    When I read this, the first thing that popped into my head was "Python." I'm still not sure if I love Python it or hate it, but I'll take it over Perl any day.
    Moderator of the InfoSec, CWNP, IT Jobs, Virtualization, Java, and Microsoft Developers forums at www.techexams.net
    --
    Blog: www.techexams.net/blogs/jdmurray
    LinkedIn: www.linkedin.com/in/jamesdmurray
    Twitter: www.twitter.com/jdmurray
    Reply With Quote Quote  

  19. Virtual Member undomiel's Avatar
    Join Date
    Sep 2007
    Location
    Bellevue, WA
    Posts
    2,813

    Certifications
    MCSA:2008, VCP4/5, CCA (XS), MCITP: EA/VA, MCSE, MCSA, Linux+, Security+, Server+, A+
    #18
    So far I prefer Ruby syntax to Python. It just makes more sense, possibly because it has a bit more C++ feel to it.
    Reply With Quote Quote  

  20. Senior Member Pash's Avatar
    Join Date
    Nov 2006
    Location
    United Kingdom
    Posts
    1,608

    Certifications
    MCSA 2003, JNCIA-FWV, Security+ Expired: CCNA
    #19
    Quote Originally Posted by RobertKaucher View Post
    For a sys admin that might be putting the cart before the horse.

    Also, I hope JD is going to explain why PoSh is not truely OO.

    Although you can now write OO style code using PSClass - Object Oriented Scripting in Powershell
    Me too, but I hope he uses some really understandable analogy with it (lemmings, army of snowmen or something!)

    Nice link thanks.

    Goodluck to the OP in whatever you choose.
    “The creator of the universe works in mysterious ways. But he uses a base ten counting system and likes round numbers.” Scott Adams

    2011-2012 Goals: Improve my implementation skills. Continue C# .NET endeavours.
    Reply With Quote Quote  

  21. Senior Member TheShadow's Avatar
    Join Date
    Dec 2004
    Posts
    1,060
    #20
    Quote Originally Posted by Pash View Post
    Me too, but I hope he uses some really understandable analogy with it (lemmings, army of snowmen or something!)
    Wow you guys really know how to goad a person. Just poke him with a sharp stick why don't you.

    So far he has resisted but just in case... popcorn in microwave, control panel set to stun. Usenet has taught me that OO discussions are safer as a spectator sport. Just staggered in from one of the worlds largest Halloween celebrations so no sense going to sleep. Lets do the time warp again; argh you are to old for this hippy, cold shower time.
    Reply With Quote Quote  

  22. Objectives my friend! varelg's Avatar
    Join Date
    Jul 2009
    Location
    Santa Fe, NM
    Posts
    784

    Certifications
    RHCSA
    #21
    Quote Originally Posted by wedge1988 View Post
    wow, okay. thanks all! - erm. so ill learn powershell first. actually on second thought, learning powershell first will help me learn c# later if i feel it's the right path, and, might even give me an inclininto how c# works.

    Knowing the code definitely will help understand the under core of programs.
    On topic, you can do the same .NET things in any .NET language and it really depends which syntax you prefer, indentation as the line end (Visual Basic) or a colon ("serious" developers' preference) .
    To know how .NET stuff works, take a plunge into the CLR (Common Language Runtime), that's where real secrets live, not the particular language syntax. But once you open a book on CLR you must repeat three times before you start reading: "This doesn't look like Java". Boy, they even hit the same wall like Java: the virtual machine versioning. But no, it shouldn't look like Java
    Reply With Quote Quote  

  23. Senior Member TheShadow's Avatar
    Join Date
    Dec 2004
    Posts
    1,060
    #22
    Quote Originally Posted by varelg View Post
    On topic, you can do the same .NET things in any .NET language and it really depends which syntax you prefer, indentation as the line end (Visual Basic) or a colon ("serious" developers' preference) .
    To know how .NET stuff works, take a plunge into the CLR (Common Language Runtime), that's where real secrets live, not the particular language syntax. But once you open a book on CLR you must repeat three times before you start reading: "This doesn't look like Java". Boy, they even hit the same wall like Java: the virtual machine versioning. But no, it shouldn't look like Java
    If you like detailed alchemy brain damage I recommend this tome ...

    Amazon.com: CLR Via C# (Pro Developer) (9780735621633): Jeffrey Richter: Books: Reviews, Prices & more

    Persons that purchase this book probably should also purchase a bell and a candle if not already in your wizards apprentice kit.
    Last edited by TheShadow; 11-01-2010 at 09:09 PM.
    Reply With Quote Quote  

  24. Objectives my friend! varelg's Avatar
    Join Date
    Jul 2009
    Location
    Santa Fe, NM
    Posts
    784

    Certifications
    RHCSA
    #23
    Quote Originally Posted by TheShadow View Post
    If you like detailed alchemy brain damage I recommend this tome ...

    Amazon.com: CLR Via C# (Pro Developer) (9780735621633): Jeffrey Richter: Books: Reviews, Prices & more

    Persons that purchase this book probably should also purchase a bell and a candle if not already in your wizards apprentice kit.
    I thought Halloween passed... hey but wait, have you seen the literature on the underpinnings of Java? THAT is exemplary bell-and-candle writing. For starters, try "Java Language Specification", classic...
    So wedge wanted to learn the secrets Sorry, no Kathy Sierra books on CLR...
    Reply With Quote Quote  

  25. Senior Member TheShadow's Avatar
    Join Date
    Dec 2004
    Posts
    1,060
    #24
    Quote Originally Posted by varelg View Post
    : Sorry, no Kathy Sierra books on CLR...
    Yes, Kathy writes decent stuff, a down to earth lady and a geeks, geek. However she is basically a Sun evangelist unless things changed for her after Oracle took over. I have her SCJP around here somewhere.
    Reply With Quote Quote  

  26. Command Line Ninja Chris:/*'s Avatar
    Join Date
    Apr 2010
    Location
    In the void
    Posts
    657

    Certifications
    NSTISSI (4012 & 4011), eCPPT, CEH, CHFI, EDRP, CWSP, CWNA, RHCSA, VCP 3, G2700, GSEC, CIW:SP:WFA, Security+, Network+, A+
    #25
    As for PowerShell being Object-Oriented (OO) or not OO it does support OO features but when I have heard the argument before it boils down to your opinion more than anything.

    PowerShell allows the use of Encapsulation, Polymorphism and constructs. It does not support public and private data sets. Everything in it based on Microsoft OS or API features that do not allow it to be ported to different OS much like bash. As such it does not use dynamic libraries like C++, C# (uses both dynamic libraries and APIs), Python, Ruby, Perl, Java and many more.

    When it comes to this argument the only Completely pure OO languages are Java, Smalltalk, Eiffel, Ruby and C# as everything in it is an object which must be built up. You can program C++ (using just the legacy C code) or script Perl, Python, PowerShell and so on without using OO principles you cannot do that with Java or C#. Purist often state that if you can program or script in a language without having to use the OO features that makes the language non-OO. If that is true then C++ which is claimed to the father of most OO languages is not OO because of its C roots.

    That being said most languages that support the use of OO features are considered OO. There is a sliding ruler scale though of which language is more OO than others PowerShell would be closer to the bottom with most other scripting or implemented languages.

    In the end it comes down to opinion.
    Last edited by Chris:/*; 11-02-2010 at 11:06 AM.
    Reply With Quote Quote  

+ Reply to Thread
Page 1 of 2 1 2 Last

Social Networking & Bookmarks