Project naming best practices

hi
the naming conventions for coding Java applications are clear to me. I'm  wondering what the best practices are for naming Java projects e.g. when creating a new project in NetBeans IDE or in BitBucket?
thanks.

the naming conventions for coding Java applications are clear to me.
They are? What are they? Different orgs have their own naming standards. Other people have to be able to read, understand, maintain and enhance your code so standards are important.
I'm  wondering what the best practices are for naming Java projects e.g. when creating a new project in NetBeans IDE or in BitBucket?
No one but your own business users and IT team even cares what you name your projects.

Similar Messages

  • What are project management best practices?

    I created a test project in Premiere Elements 12, and saved it in a directory named "Michaels Posters".   Then I archived the project to this directory and it created a "Copied_My\ new\ video\ project1" directory with all of the media files.  Then I added a video clip to the project, archived it again, and it created the "Copied_My\ new\ video\ project1_001" folder below.
    My first real project will be a video highlights video of my 4 years old for 2013.  This will involve editing the same project several nights a week, for maybe a couple of months.  This would result in numerous "Copied_My\ new\ video\ project1_NNN" directories being created, assuming I archive the project each night.
    So what is the best practices for managing a larger project like this, and avoid using a lot of disk space for the same project?
    Michaels\ Posters/
    ├── Adobe\ Premiere\ Elements\ Preview\ Files
    │   └── My\ new\ video\ project1.PRV
    ├── Copied_My\ new\ video\ project1
    │   ├── Adobe\ Premiere\ Elements\ Preview\ Files
    │   ├── Encoded\ Files
    │   └── Layouts
    ├── Copied_My\ new\ video\ project1_001
    │   └── Adobe\ Premiere\ Elements\ Preview\ Files
    ├── Encoded\ Files
    │   └── My\ new\ video\ project1.prel
    ├── Layouts
    └── Media\ Cache\ Files

    I do work with the LAST archived project file, which contains ALL necessary resources to edit the video.  But then if I add video clips to the project, these newly added clips are NOT in the archived project, so I archive it again.
    The more I think about it, the more I like this workflow.  One disadvantage as you said is duplicate videos and resource files.  But a couple of advantages I like are:
    1. You can revert to a previous version if there are any issues with a newer version, e.g., project corruption.
    2. You can open the archived project ANYWHERE, and all video and resource files are available.
    In terms of a larger project containing dozens of individual clips like my upcoming 2013 video highlights video of my 4  year old, I'll delete older archived projects as I go, and save maybe a couple of previous archived projects, in case I want to revert to these projects.
    If you are familiar with the lack of project management iMovie, then you will know why I am elated to be using Premiere Elements 12, and being able to manage projects at all!
    Thanks again for your help, I'm looking forward to starting my next video project.

  • DW:101 Question - Site folder and file naming - best practices

    OK - My 1st post! I’m new to DW and fairly new to developing websites (have done a couple in FrontPage and a couple in SiteGrinder), Although not new at all to technical concepts building PCs, figuring out etc.
    For websites, I know I have a lot to learn and I'll do my best to look for answers, RTFM and all that before I post. I even purchased a few months of access to lynda.com for technical reference.
    So no more introduction. I did some research (and I kind of already knew) that for file names and folder names: no spaces, just dashes or underscores, don’t start with a number, keep the names short, so special characters.
    I’ve noticed in some of the example sites in the training I’m looking at that some folders start with an underscore and some don’t. And some start with a capital letter and some don’t.
    So the question is - what is the best practice for naming files – and especially folders. And that’s the best way to organize the files in the folders? For example, all the .css files in a folder called ‘css’ or ‘_css’.
    While I’m asking, are there any other things along the lines of just starting out I should be looking at? (If this is way to general a question, I understand).
    Thanks…
    \Dave
    www.beacondigitalvideo.com
    By the way I built this site from a template – (modified quite a bit) in 2004 with FrontPage. I know it needs a re-design but I have to say, we get about 80% of our video conversion business from this site.

    So the question is - what is the best practice for naming files – and especially folders. And that’s the best way to organize the files in the folders? For example, all the .css files in a folder called ‘css’ or ‘_css’.
    For me, best practice is always the nomenclature and structure that makes most sense to you, your way of thinking and your workflow.
    Logical and hierarchical always helps me.
    Beyond that:
    Some seem to use _css rather than css because (I guess) those file/folder names rise to the top in an alphabetical sort. Or perhaos they're used to that from a programming environment.
    Some use CamelCase, some use all lowercase or special_characters to separate words.
    Some work with CMSes or in team environments which have agreed schemes.

  • HANA SID naming "best practice"

    Hi,
    We are about to implement some HANA's as databases for Netweaver systems.
    Any recommendations on what SID's to give the HANA systems?
    The same as the Netweaver system for which it is a DB servers perhaps? (you will now have duplicate SIDs registered for licensing, the SLD, Solution Manager, etc.).
    Something completely different?
    What is the best approach in terms of naming convention in your experience?
    Thanks!
    Adriaan

    Hi Adriaan,
    from Hana Installation Guide
    11.40 sid
    Specifies a system ID. The SAP system ID (SID) is the identifier for the SAP HANA system.
    Requirements
    ● The ID must be unique throughout your organization and consistent throughout
    your SAP system installation landscape.
    ● If you want to install an additional application server instance, make sure that no
    gateway instance with the same SAP SID exists in your SAP system landscape.
    ● The ID must consist of exactly three alphanumeric characters. Only uppercase
    letters are allowed. The first character must be a letter (not a digit).
    ● The following IDs are reserved and cannot be used: ADD ALL AMD AND ANY ARE
    ASC AUX AVG BIT CDC COM CON DBA END EPS FOR GET GID IBM INT KEY LOG
    LPT MAP MAX MIN MON NIX NOT NUL OFF OLD OMS OUT PAD PRN RAW REF
    ROW SAP SET SGA SHG SID SQL SUM SYS TMP TOP UID USE USR VAR.
    Syntax
    In the command line, the following syntax is used:
    --sid=<SID>
    or, in short form:
    -s <SID>
    Remarks
    This parameter is available in interactive mode.
    This parameter can be specified once and automatically substituted throughout all
    parameter defaults, which use sid as part of their default value.
    11.41 storage_cfg
    Specifies a location where a global.ini is defined. It is possible to set up a storage
    http://help.sap.com/hana/SAP_HANA_Server_Installation_Guide_en.pdf
    Regards,
    V Srinivasan

  • Project Sharing - Best Practices

    Our new business plan is going to require that we have multiple developers working on a single NetWeaver Project (EP and Web DynPro projects).
    What is the best way to set this up so we can all work on a project together? Our current process simply places the project on our network server and we all open the same project. We typically are working on different sections of a project so there isn't a problem with two developers working on the same object at once.
    Is this a good way to go? Should we be looking at Development Components and if so, does anyone have a good resource on using it?

    I found a development scenarios PDF that should help. Thanks anyway.

  • File naming best practice

    Hello
    We are building a CMS system that uses BDB XML to store the individual xhtml pages, editorial content, config files etc. A container may contain tens of thousands of relatively small (<20 Kb) files.
    We're trying to weigh up the benefit on meaningful document names such as "about-us.xml" or "my-profile.xml" versus integer/long file names such as 4382, 5693 without the .xml suffix to make filename indexing as efficient as possible.
    In both situations the document remain unique: appending '_1', '_2' etc where necessary to the former and always incrementing by 1 the latter.
    There is a 'lookup' document that describes the hierarchy and relationships of these files (rather like a site map) so the name of the required document will be known in advance (as a reference in the lookup doc) so we believe that we shouldn't need to index the file names. XQuery will run several lookups but only based upon the internal structure/content of the documents, not on the document names themeselves.
    So is there any compelling reason not to use meaningful names in the container, even if there are > 50,000 documents?
    Thanks, David

    George,
    I was interested in finding out whether document names made of integers would be much more efficient - albeit less intuitive - in the name index than something like 'project_12345.xml'.
    We may need to return all documents of type 'project' so putting the word in the document name seemed like a good idea, but on reflection perhaps we're better off putting that info in the metadata, indexing that and leave the document name as a simple integer/long such as '12345'.
    If so, is it worth rolling out my own inetger-based counter to uniquely name documents or am I better off just using the in-built method setGenerateName()? Is there likely to be much of a performance difference?
    Regards, David

  • EFashion sample Universes and best practices?

    Hi experts,
    Do you all think that the eFashion sample Universe was developed based on the best practices of Universe design? Below is one of my questions/problems:
    Universe is designed to hide technical details and answer all valid business questions (queries/reports). For non-sense questions, it will show 'incompatible' etc. In the eFashion sample, I tried to compose a query to answer "for a period of time, e.g. from 2008.5 to 2008.9, in each week for each product (article), it's MSRP (sales price) and sold_price and margin and quantity_sold and promotion_flag". I grabed the Product.SKUnumber, week from Time period, Unit Price MSRP from Product, Sold at (unit price) from Product, Promotions.promotion, Margin and Quantity sold from Measures into the Query Panel. It gives me 'incompatible' error message when I try to run it. I think the whole sample (from database data model to Universe schema structure/joins...) is flawed. In the Product_promotion_facts table, it seems that if a promotion lasts for more than one week, the weekid will be the starting week and duration will indicate how long it lasts. In this design, to answer "what promotions run in what weeks" will not be easy because you need to join the Product_promotion_facts with Time dimention using "time.weekid between p_prom.weekid and p_prom.weekid+duration" assuming weekid is in sequence, instead of simple "time.weekid=p_prom.weekid".  The weekid joins between Shop_fact and product_promotion_facts and Calendar_year_lookup are very confusing because one is about "the week the sales happened" and the other "the week the promotion started". No tools can smart enough to resolve this ambitious automatically. Then the shortcut join between shop_facts and product_promotion_facts. it's based on the articleid alone. obviously the two have to be joined on both article and time (using between/and, not the simple weekid=weekid in this design), otherwise the join doesn't make sense (a sale of one article on one day joins to all the promotions to this article of all time?).
    What do you think?
    thanks.
    Edward

    You seem to have the idea that finding out whether a project uses "best practices" is the same as finding out whether a car is blue. Or perhaps you think there is a standards board somewhere which reviews projects for the use of "best practices".
    Well, it isn't like that. The most cynical viewpoint is that "best practices" is simply an advertising slogan used by IT consultants to make them appear competent to their prospective clients. But basically it's a value judgement. For example using Hibernate may be a good thing to do in many projects, but there are projects where it would not be a good thing to do. So you can't just say that using Hibernate is a "best practice".
    However it's always a good idea to keep your source code in a repository (CVS, Subversion, git, etc.) so I think most people would call that a "best practice". And you could talk about software development techniques, but "best practice" for a team of three is very different from "best practice" for a team of 250.
    So you aren't going to get a one-paragraph description of what features you should stick in your project to qualify as "best practices". And you aren't going to get a checklist off the web whereby you can rate yourself for "best practices" either. Or if you do, you'll find that the "best practice" involves buying something from the people who provided the checklist.

  • Best Practice for Tranport request Naming

    Hi,
    We are using SolMan 4.0 during implementation of ECC 6.0.
    We have placed the blueprint and we are in configuration phase.
    We have a IMG project created in the DEV system and was assinged in Solution Manager project under  System Landscape->IMG Projects.
    Now that consultants are going to dev system and customizing they are creating their transport requests.
    Is there any best practice for the naming convention or the transport requests..
    By creating one IMG project for entire implementation is that going to create any problem..!!
    Please sgugest.
    Thanks & Regards
    Mrutyunjay

    As per MSFT best practices(Mentioned by Scott) keep it short as much as possible. You can use SP for SharePoint-SUBSite
    also check this blog for best practices.
    http://www.networkworld.com/community/blog/simple-naming-conventions-improve-end-user-experience-sharepoint-sites
    also one more thing you should consider, never use the reserved words into the SharePoint URLs. you will able to create the site/lis/library/folder but when you browse get the 404 errors.
    check this blog:
    http://www.sharepointblog.cz/2012/04/reserved-words-in-sharepoint-url.html
    http://techtrainingnotes.blogspot.com/2012/03/names-you-cant-use-for-sharepoint.html
    Please remember to mark your question as answered &Vote helpful,if this solves/helps your problem. ****************************************************************************************** Thanks -WS MCITP(SharePoint 2010, 2013) Blog: http://wscheema.com/blog

  • 1 RH Project, 2 Users - Best Practices

    Hi,
    I've been the sole writer at our company for 6+ years. I finally have someone to help me; however, this has introduced a new challenge. We will *both* be working on the same RH project, and we will be using VSS for source control. I'm not sure how we should be 'sharing' this single RH project.
    Does anyone have any best practices for when working in this type of situation?
    I have questions such as:
    When the other person is creating Index keywords, what if I have files checked out - how will this affect the adding of keywords?
    When the other person creates new snippets or new user-defined variables, should he immediately check them in and let me know so that I can do a get latest and have the new snippets/variables in my project?
    How do we manage both of us working on the same project, and having the need to check in/check out files, create new topics, etc. - what should our 'workflow' be?
    Thanks in advance for ANY assistance/tips that any of you can provide!

    I like Author Care's golden rule: keep things simple and robust. This topic touches on the three basic ways of sharing help authoring tasks. In order of complexity:
    1.  Serial authoring. If you don't need to have both authors in the project at the same time, you can simply take turns working on the project. Just pass the files back and forth as needed. This is the most simple and robust approach.
    2. Merging projects. If you need concurrent authoring, then, yes, this is a simpler and more robust approach than source control. However, this only works if you can partition your material and your work assignments into two or more clearly-delineated parts. Merging projects can be a great solution, but it doesn't fit all cases.
    3. Source control. If multiple authors need concurrent access to the same material, then source control is the simplest answer.
    Here are some tips and observations, based on my experience with RoboSource Control, in no particular order:
    1. Source control works best on small-to-medium-sized projects. Large ones can be unstable.
    2. Set it up to restrict file checkouts to one author only. Allowing two authors to work on a single topic simultaneously is bad.
    3. If possible, try to work in different areas of the project that don't touch. Remember that a single change in one topic can ripple out to many related topics. (For example, if you change the filename of a topic, every link to that topic must be changed.) If someone else is working in one of those related topics, you will not be able to complete your initial change.
    4. Make backup copies of your projects regularly, even though they are in source control.
    5. Create an administrator account to be used just for that purpose. Don't use that account for regular authoring. Don't give everyone administrative privileges.
    6. Designate one person as the administrator. Have at least one backup administrator. These will be the people who set up user accounts, override checkouts ("I need that file, and Joe is on vacation!"), resurrect old files, sort out source control conflicts, etc.
    7. Check in files as soon as you're done with them. Don't leave them checked out longer than necessary.
    8. If you have large projects, your virus scan utility can really degrade performance during certain operations, such as the initial "get" of project files. If this is the case, you might be able to configure your antivirus program to be friendlier to these source control activities.
    9. The help authors should stay in close communication. Let each other know what you're doing, especially if you are doing something radical like moving folders around. Be ready to check something back in if someone else needs it.
    10. Give a lot of thought to how your project is structured. Consider file structure, naming conventions, etc.
    11. Some actions are more source control intensive than others. (Moving, deleting or renaming folders are biggies.) Your project is vulnerable while these changes are in progress. If something goes wrong before the process is complete, you can end up with a mess on your hands. For example, let's say there's a network glitch while you're moving a folder, interrupting your connection with source control. You can end up with RH thinking that the folder is in one place, while source control thinks it's in another. The result is broken links and missing files. Time for the administrator to step in and sort things out. This is almost never a problem for small projects. It becomes a real issue for large projects.
    12. If you're getting close to a deadline, DO NOT pick that time to reorganize and rename files and folders.
    13. Follow the correct procedure for adding a project to source control. Doing it wrong will really mess you up. Adding a project to RoboSource Control is easy. I can't speak for other source control solutions.
    14.  You might find it necessary to rebuild your cpd file more often than with non-source controlled projects.
    15.Have I mentioned lately that you should back up your source files?
    HTH,
    G

  • Best practices on number of pipelines in a single project/app to do forging

    Hi experts,
    I need couple of clarification from you regarding endeca guided search for enterprise application.
    1)Say for example,I have a web application iEndecaApp which is created by imitating the jsp reference application. All the necessary presentation api's are present in WEB-INF/lib folder.
    1.a) Do I need to configure anything else to run the application?
    1.b) I have created the web-app in eclipse . Will I be able to run it from the any thirdparty tomcat server ? If not then where I have to put the war file to successfully run the application?
    2)For the above web-app "iEndecaApp" I have created an application named as "MyEndecaApp" using deploymenttemplate. So one generic pipeline is created. I need to integrate 5 different source of data . To be precise
    i)CAS data
    ii)Database table data
    iii)Txt file data
    iv)Excel file data
    v)XML data.
    2.a)So what is the best practice to integrate all the data. Do I need to create 5 different pipeline (each for each data) or I have to integrate all the 5 data's in a single pipeline ?
    2.b)If I create 5 different pipeline then all should reside in a single application "MyEndecaApp" or I need to create 5 difference application using deployment template ?
    Hope you guys will reply it back soon..... Waiting for your valuable response ..
    Regards,
    Hoque

    Point number 1 is very much possible ie running the jsp ref application from a server of your choice.I havent tried that ever but will draw some light on it once I try.
    Point number 2 - You must create 5 record adapters in the same pipeline diagram and then join them with the help of joiner components. The resultant must be fed to the property mapper.
    So 1 application, 1 pipeline and all 5 data sources within one application is what should be the ideal case.
    And logically also since they all are related data, so must be having some joining conditions and you cant ask 5 different mdex engines to serve you a combined result.
    Hope this helps you.
    <PS: This is to the best of my knowledge>
    Thanks,
    Mohit Makhija

  • Best Practices for Defining NDS Java Projects...

    We are doing a Proof of Concept on using NDS to develop non-SAP Java applications.  We are attempting to determine if we can replace our current Java development tools with NDS/WAS.
    We are struggling with SAP's terminology and "plumbing" for setting up/defining Java projects.  For example, what is and when do you define Tracks, Software Components, Development Components, etc.  All of these terms are totally foreign to us and do not relate to our current Java environment (at least not that we can see).  We are also struggling with how the DTR and activities tie in to those components.
    If any one has defined best practices for setting up Java projects or has struggled with and overcome these same issues, please provide us with some guidance.  This is a very frustrating and time-consuming issue for us.
    Thank you!!

    Hi Peggy,
    In Component Model we divide software projects into small components.Components can use other components in well defined manner.
    A development object is a part of a component that can be changed or developed in some way; it provides the component with a certain part of its functionality. A development object may be a Java class, a Web Dynpro view, a table definition, a JSP page, and so on. Development objects are always stored as “sources” in a repository.
    A development component can be defined as a frame shared by a number of objects, which are part of the software.
    Software components combine components (DCs) to larger units for delivery and deployment.
    A track comprises configurations and runtime systems required for developing software component versions.It ensures stable states of deliverables used by subsequent tracks.
    The Design Time Repository is for versioning source code management. Distributed development of software in teams. Transport and replication of sources.
    You can also find lot of support in SDN for the above concepts with tutorials.
    Refer this Link for a overview on Java development Infrastructure(JDI)
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webas/java/java development infrastructure jdi overview.pdf
    To understand further
    Working with Net Weaver Development Infrastructure :
    http://help.sap.com/saphelp_nw04/helpdata/en/03/f6bc3d42f46c33e10000000a11405a/content.htm
    In the above link you can find all the concepts clearly explained.You can also find the required tutorials for development.
    Regards,
    Vijith

  • Best practices for setting up projects

    We recently adopted using Captivate for our WBT modules.
    As a former Flash and Director user, I can say it’s
    fast and does some great things. Doesn’t play so nice with
    others on different occasions, but I’m learning. This forum
    has been a great source for search and read on specific topics.
    I’m trying to understand best practices for using this
    product. We’ve had some problems with file size and
    incorporating audio and video into our projects. Fortunately, the
    forum has helped a lot with that. What I haven’t found a lot
    of information on is good or better ways to set up individual
    files, use multiple files and publish projects. We’ve decided
    to go the route of putting standalones on our Intranet. My gut says
    yuck, but for our situation I have yet to find a better way.
    My question for discussion, then is: what are some best
    practices for setting up individual files, using multiple files and
    publishing projects? Any references or input on this would be
    appreciated.

    Hi,
    Here are some of my suggestions:
    1) Set up a style guide for all your standard slides. Eg.
    Title slide, Index slide, chapter slide, end slide, screen capture,
    non-screen capture, quizzes etc. This makes life a lot easier.
    2) Create your own buttons and captions. The standard ones
    are pretty ordinary, and it's hard to get a slick looking style
    happening with the standard captions. They are pretty easy to
    create (search for add print button to learn how to create
    buttons). There should instructions on how to customise captions
    somewhere on this forum. Customising means that you can also use
    words, symbols, colours unique to your organisation.
    3) Google elearning providers. Most use captivate and will
    allow you to open samples or temporarily view selected modules.
    This will give you great insight on what not to do and some good
    ideas on what works well.
    4) Timings: Using the above research, I got others to
    complete the sample modules to get a feel for timings. The results
    were clear, 10 mins good, 15 mins okay, 20 mins kind of okay, 30
    mins bad, bad, bad. It's truly better to have a learner complete
    2-3 short modules in 30 mins than one big monster. The other
    benefit is that shorter files equal smaller size.
    5) Narration: It's best to narrate each slide individually
    (particularly for screen capture slides). You are more likely to
    get it right on the first take, it's easier to edit and you don't
    have to re-record the whole thing if you need to update it in
    future. To get a slicker effect, use at least two voices: one male,
    one female and use slightly different accents.
    6) Screen capture slides: If you are recording filling out
    long window based databse pages where the compulsory fields are
    marked (eg. with a red asterisk) - you don't need to show how to
    fill out every field. It's much easier for the learner (and you) to
    show how to fill out the first few fields, then fade the screen
    capture out, fade the end of the form in with the instructions on
    what to do next. This will reduce your file size. In one of my
    forms, this meant the removal of about 18 slides!
    7) Auto captions: they are verbose (eg. 'Click on Print
    Button' instead of 'Click Print'; 'Select the Print Preview item'
    instead of 'Select Print Preview'). You have to edit them.
    8) PC training syntax: Buttons and hyperlinks should normally
    be 'click'; selections from drop down boxes or file lists are
    normally 'select': Captivate sometimes mixes them up. Instructions
    should always be written in the correct order: eg. Good: Click
    'File', Select 'Print Preview'; Bad: Select 'Print Preview' from
    the 'File Menu'. Button names, hyperlinks, selections are normally
    written in bold
    9) Instruction syntax: should always be written in an active
    voice: eg. 'Click Options to open the printer menu' instead of
    'When the Options button is clicked on, the printer menu will open'
    10) Break all modules into chapters. Frame each chapter with
    a chapter slide. It's also a good idea to show the Index page
    before each chapter slide with a progress indicator (I use an
    animated arrow to flash next to the name of the next chapter), I
    use a start button rather a 'next' button for the start of each
    chapter. You should always have a module overview with the purpose
    of the course and a summary slide which states what was covered and
    they have complete the module.
    11) Put a transparent click button somewhere on each slide.
    Set the properties of the click box to take the learner back to the
    start of the current chapter by pressing F2. This allows them to
    jump back to the start of their chapter at any time. You can also
    do a similar thing on the index pages which jumps them to another
    chapter.
    12) Recording video capture: best to do it at normal speed
    and be concious of where your mouse is. Minimise your clicks. Most
    people (until they start working with captivate) are sloppy with
    their mouse and you end up with lots of unnecessarily slides that
    you have to delete out. The speed will default to how you recorded
    it and this will reduce the amount of time you spend on changing
    timings.
    13) Captions: My rule of thumb is minimum of 4 seconds - and
    longer depending on the amount of words. Eg. Click 'Print Preview'
    is 4 seconds, a paragraph is longer. If you creating knowledge
    based modules, make the timing long (eg. 2-3 minutes) and put in a
    next button so that the learner can click when they are ready.
    Also, narration means the slides will normally be slightly longer.
    14) Be creative: Capitvate is desk bound. There are some
    learners that just don't respond no matter how interactive
    Captivate can be. Incorporate non-captivate and desk free
    activities. Eg. As part of our OHS module, there is an activity
    where the learner has to print off the floor plan, and then wander
    around the floor marking on th emap key items such as: fire exits;
    first aid kit, broom and mop cupboard, stationary cupboard, etc.
    Good luck!

  • Is dao pattern is the best practice in projects

    let me know if dao pattern is the best followed in all almost all the
    projects though finding alternatives to it. please clarify this for me and also i do want to know the best practices of the industry in using design patterns.

    There is no 'best' pattern. It is just all abouthow
    and where to apply them. This is very true,but these are common
    design patterns used in industry for standard
    problems.
    ost of the time patterns are used not for some
    special reason but for more manageability and ease of
    change.So if you have a small application than it's
    ok but if you are working on big application which
    are needed to be maintained over a time and changes
    are frequent.Than its better to start learning about
    patterns because their will be problems which right
    now you can't see but eventually you have to take
    care of.That is either incorrect or phrased poorly.
    Patterns come about because someone analyzes different existing code bases and notes that there are similarities in the way they are built.
    It isn't that they are easier to maintain but rather that because the pattern has similarities it is easier to comprehend, understand the limitations, understand the possible related patterns, etc. That might lead to easier maintainance but it isn't the reason. The reason is because, if and only if, the requirements/architecture lead to a situation where that pattern could be properly used.

  • Best Practice for Using Static Data in PDPs or Project Plan

    Hi There,
    I want to make custom reports using PDPs & Project Plan data.
    What is the Best Practice for using "Static/Random Data" (which is not available in MS Project 2013 columns) in PDPs & MS Project 2013?
    Should I add that data in Custom Field (in MS Project 2013) or make PDPs?
    Thanks,
    EPM Consultant
    Noman Sohail

    Hi Dale,
    I have a Project Level custom field "Supervisor Name" that is used for Project Information.
    For the purpose of viewing that "Project Level custom field Data" in
    Project views , I have made Task Level custom field
    "SupName" and used Formula:
    [SupName] = [Supervisor Name]
    That shows Supervisor Name in Schedule.aspx
    ============
    Question: I want that Project Level custom field "Supervisor Name" in
    My Work views (Tasks.aspx).
    The field is enabled in Task.aspx BUT Data is not present / blank column.
    How can I get the data in "My Work views" ?
    Noman Sohail

  • Best Practices for File Organizati​on/Project Explorer

    So we are finally getting SCC at my organization to manage our LabVIEW development, and that is good! 
    Now, we are starting in on discussions about how we should organize our files on disk and how we should use the Project Explorer. When I started here about 3 years ago, I wasn't very familiar with the project explorer, so I read the article at http://zone.ni.com/devzone/cda/tut/p/id/7197. Two of the main things I took away from that article are:
    1. Organize Files in a logical manner on disk. Whatever that is, it is not a flat file structure.
    2. The top level VI should be separate from other source code. Preferably, it should reside in the application folder.
    Push Back Against These Recommendations
    Before I was hired, most, if not all LabVIEW development was done utilizing a flat file structure and the top level VI lived with the source code. Since we didn't have a proper SCC, each individual organized files as he saw fit. So I started using the Project Explorer (not even its use is totally accepted right now) and I began follow recommendations 1 and 2 above. I didn't always follow #1 very strictly, but I have been working towards it, and I have always followed #2 religiously. 
    Since we are starting these discussions on how we should organize files on disk I'm starting to get some push back to following these two recommendations.
    The arguments I get in favor of using a flat file structure is that you always know where every file is; including the top-level VI. It is also argued that it is a lot of effort to organize and search for VIs when they all reside in different folders. I think the fear is that by getting "clever" and organizing our files in such a manner we'll make things complicated and we will somehow shoot ourselves in the foot. 
    The argument I get against separating the top level VI from the rest of the source code is that it:
    (a) Won't be clear where it is (like it is buried within hundreds of VIs). However, it is argued, you can just put a "!" in front of the file name and then it is always the at top of the flat file structure.
    (b) An extension of argument of (a) is that things either look or seem messy when VIs (including top level VI) don't live in a sub-folder and are just hanging out with the Project Explorer file. 
    (c) I think there may be some fear of breaking the VI by moving it and altering the dependencies for the VI. 
    Convincing Others its Good to Follow These Recommendations
    So, if I want to follow NI's recommendations, I need to come up with reasons we should follow these recommendations. Also, I should state that I care about following these recommendations because its what NI recommends. They've been around the block a few times and I'm sure there are good reasons why these are best practices. However, I don't think I've given a very compelling case for why these recommendations should be followed.
    So I'll tell you all what I think good reasons are for these recommendations and perhaps I can get some feedback or additional support? If I'm crazy for wanting to follow these recommendations maybe someone can point out why I'm crazy. 
    (a) Arguments for Following Both
    I. I passed the CLAD a couple of weeks ago, and I have started studying for the CLD. Part of the CLD is following both of these recommendations (see page 6 of http://ftp.ni.com/evaluation/certification/cld/cld​_exam_prep_guide_english.pdf). While this isn't a reason in and of itself, it suggests that if it important when being certified it is important in practice!
    II. If we hire new developers that are familiar with LabVIEW, they will most likely be familiar with these recommendations, especially if they are certified. That will lead to increased productivity out of the door because they won't have to learn our special way of doing things.
    (b) Arguments for Organized File Structure
    I. Unused VIs are easier to identify and remove. Right now we never remove VIs because we don't know if they are used or not. This leads to a lot of VI bloat.
    II. It is hard to know what a specific VIs function is in a flat file structure by looking at the name.
    (c) Arguments for Separating Top Level VI from Source Code
    I. Placing the top level VI is an intuitive place for this VI. As long as the top level VI is the only VI in the application folder there is no mistake it is the top level VI, especially once you open it. This makes it easy for new developers to find the top level VI. I'd argue it isn't very intuitive for new developers to know that a VI in the source code folder that is prefaced with a "!" is the top level VI.
    Summary
    So that is what I think so far. Is there anything else I am missing to support following those two recommendations or am I just being inflexible?
    Thanks!

    zenthoef,
    As a CLA, I have struggled with file structure over the years.  Here are my recommendations:
    1.  Put the top level VI and the project in the top-level folder.  This makes it very clear where to begin.
    2.  Put the remaining user interface VIs in a separate folder.  Again, it makes it very clear what the functionality of these VIs are.
    3.  If you are using object, put each object in a separate folder.  Place the family of objects in one folder, with each object in a subfolder.
    4.  Keep the remaining VIs either in a single folder.  This can contain a small number of subfolder if your project is large, but too many folders makes it hard to figure out where your VIs are.  For example, you might have a DAQ subfolder, an Analysis subfolder, and a Report subfolder.  But if you had a Test1 folder, a Test2 folder, and you had a VI that was used by both tests, where would it go?  Keep it simple.
    5.  You inferred that it is hard to figure out what a VI does by its name.  That implies that 1) you need better names, and 2) your VIs are too complicated.  A VI should do a single function which can be adequately described by its name.  That VI might be something like Analyze Data.vi, which would contain a bunch more subVIs (like Get 1st Harmonics.vi), but each VI would contain a single function.  You wouldn't save the data to a report in the Analyze Data.vi, for example.
    The most compelling reason for following these suggestions is that it is easier to figure out what the code is doing after you haven't looked at it for a while.  Once you have an application that is working and bug free, you shouldn't have to touch the code until you want to add features.  If that is even 6 months later, you will probably have forgotten how the code works.  As a consultant, I have had to update other people's code, and just figuring how where to start can be a challenge.
    Tom Brass
    Certified LabVIEW Architect
    Saint Bernard Engineering, Inc.
    www.saintbernardengineering.com
    Tom Brass
    Certified LabVIEW Architect
    Saint Bernard Engineering, Inc.
    www.saintbernardengineering.com

Maybe you are looking for

  • MPEG 2 Aspect Ratio Problem

    I have 3 - :30 spots at 720x480 that Time Warner has requested as MPEG 2. The quality of the conversion using Compressor is rather nice, taking a 1.33 gig QT file and compressing it down to about 50meg. The problem is that it's squeezing the 720x480

  • From: field adapting to server hostname

    I've been running Mac OS X 10.4 server as a mail server for several months and overall I'm happy with the spam tagging and other features. I just received a message of a type I hadn't seen before and seek your advice. The message was sent to a valid

  • Point to dynamical internal table

    hi friends, i have a dynamic internal table A holding some data based on an ddic-structure. now i have a second table B - self defined - that should in one column hold kind of a pointer ( or better the row data ) to a row of table A. how to achieve t

  • Number of authorized computers

    Hi, I'm trying to authorize a new computer but iTunes says "You cannot authorize more than 5 computers. You have already authorized 5 computers ... bla bla bla...". So I tried to go and see the list of authorized devices: three computers an one iphon

  • HTTP Error 411 "Length Required" when I try to call a service via POST

    Hi All, I've got a service I want to call from within Flex, and I used the Data/Services tab to setup the new service call.  It's called "CommitChanges" and it's supposed to cause the server to commit the changes that were submitted, incrementally, d