I'll add that other things have transpired ~after~ MVC though before
Node.js; specifically MVVM-type approaches. I am only bringing this up
because there have been post-MVC approaches that have attempted to address
changing concerns/needs.


Aaron Bartell
IBM i hosting, starting at $157/month. litmis.com/spaces


On Fri, Jan 12, 2018 at 12:34 PM, Kevin <kevin@xxxxxxxxxxxxxx> wrote:

Bear in mind that this whole thread is about node.js - not every possible
web framework out there. It’s amusing that a proponent of MVC would likely
be a greybeard :)

I think that many shops are still striving to get to a MVC model and see
it is the holy grail, but the point is that node.js is a relatively new
technology (for some at least) and that learning it or migrating to it does
not mean you have to implement a MVC pattern. There are other things to
consider that may be better (for your environment).

On 12 Jan 2018, at 13:43, Jim Oberholtzer <midrangel@xxxxxxxxxxxxxxxxx>
wrote:

Well said Pete. Sometimes change for changes sake, and because it was
done that way before you therefore it's not right anymore is a problem.

The goal is easy, understandable, maintainable code by the developer
that comes after you. MVC is easy, straight forward, and maintainable.
Passé, maybe but who cares. Sometimes we greybeards aren't just old,
rather we are experienced.


--
Jim Oberholtzer
Agile Technology Architects


-----Original Message-----
From: OpenSource [mailto:opensource-bounces@xxxxxxxxxxxx] On Behalf Of
Pete Helgren
Sent: Friday, January 12, 2018 7:31 AM
To: IBMi Open Source Roundtable <opensource@xxxxxxxxxxxx>
Subject: Re: [IBMiOSS] Node code organization

So, everyone will have a opinion on this...take mine with a grain of
salt....

The MVC pattern was driven by the need to move from a monolithic program
to a structure that was more modular, maintainable and organized. So, even
a monolithic pre-MVC pattern program would have subroutines that broke out
the different programmatic components. So, building reusable modules of
Models, Views and Controllers, even if they weren't completely reused as a
components, was just a logical extension of a need for organization wrapped
around the available technology.

The latest craze of "micro-services" is just an extreme extension of MVC
into today's heterogeneous technology environment. The pendulum will swing
back into more complete "packages" rather than micro-services at some
point. There is just a practical balance of functional separation and
maintainability that will rule the day.

The term MVC may be passe, but the concept is alive and well and now
living in a micro-service world....

Pete Helgren
www.petesworkshop.com
GIAC Secure Software Programmer-Java
Twitter - Sys_i_Geek IBM_i_Geek

On 1/12/2018 2:09 AM, Kevin wrote:
Do you really want a traditional MVC pattern? That’s generally
considered a bit passé. If you are developing something new then I would go
with the component approach (ala React, Angular 2 and beyond, Vue etc).

On 12 Jan 2018, at 00:44, Justin Taylor <JUSTIN@xxxxxxxxxxxxx> wrote:

I ran this command:

$ express hello_world


It generated these directories:

-bin

-public

---images

---javascripts

---stylesheets

-routes

-views


With MVC, I think V=views and C=routes, and I'd need to create a dir
for M. Does that sound about right?



________________________________
From: Pete Helgren <pete@xxxxxxxxxx>
Sent: Thursday, January 11, 2018 1:42 PM
To: IBMi Open Source Roundtable
Subject: Re: [IBMiOSS] Node code organization

Some frameworks are opinionated and some aren't so it depends if you
are going to end up fighting conventions or not. I think just about
any framework with an MVC design pattern will group like code/objects
together and I even do that for my RPG stuff (which has no opinion).
Node itself I don't think cares about structure. It is what ever is
familiar to you, but in most cases my guess is that you'll follow
either a logical grouping of like code:

/Model

/View

/Controller

Or use a naming convention: model1.js, view1.js, controller1.js
under a single folder. My Java and Rails projects follow the
convention above; A structured, opinionated layout. My Node projects
follow the latter unless they use a framework that has it's own
opinionated structure.

I'd say with complex apps, MVC by folder groupings may be easier.
For small apps I'd keep it simple....

Pete Helgren
www.petesworkshop.com<http://www.petesworkshop.com>
GIAC Secure Software Programmer-Java
Twitter - Sys_i_Geek IBM_i_Geek

--
This is the IBMi Open Source Roundtable (OpenSource) mailing list To
post a message email: OpenSource@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/opensource
or email: OpenSource-request@xxxxxxxxxxxx Before posting, please take
a moment to review the archives at
https://archive.midrange.com/opensource.

--
This is the IBMi Open Source Roundtable (OpenSource) mailing list To
post a message email: OpenSource@xxxxxxxxxxxx To subscribe, unsubscribe,
or change list options,
visit: https://lists.midrange.com/mailman/listinfo/opensource
or email: OpenSource-request@xxxxxxxxxxxx Before posting, please take a
moment to review the archives at https://archive.midrange.com/opensource.

--
This is the IBMi Open Source Roundtable (OpenSource) mailing list
To post a message email: OpenSource@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/opensource
or email: OpenSource-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/opensource.

--
This is the IBMi Open Source Roundtable (OpenSource) mailing list
To post a message email: OpenSource@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: https://lists.midrange.com/mailman/listinfo/opensource
or email: OpenSource-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at https://archive.midrange.com/opensource.


This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2020 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].