Is it easy for a PHP Developer to create own framework? [closed] - frameworks

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 9 years ago.
Improve this question
I would like to create a website similar like imdb.com. Whether imdb.com uses any framework? if so which framework it uses? Otherwise are they developing on their own? Is it easy for a normal PHP developer to create my own php framework?

As a PHP developer:
I have my own php framework, So you can say it's not so hard; But you must first learn how other frameworks work... And decide what your framework need to do... Which design patters you agree with...
Most of big websites didn't use famous frameworks, Or even their own frameworks... Mostly using a plenty of libraries... Because when you use a framework you code faster but you waste resources as RAM, CPU IO/Disk...
A well programmed application is this one that use 100% of its code source, It's good to go OOP, MVC... But not in the way most of frameworks works... This what is life less working time cause a less quality project.

There are two reasons why you would want to create your own framework:
Learning purposes, it's a great learning opportunity because you
will learn a lot.
This one I highly doubt is a issue for you, but
If you believe your framework can be different and better in some
way than those already existing, go for it.
A framework isn't the application, a framework is a tool set that lets you get straight on the application itself, instead of writing a database abstraction layer you learn how built-in in works and writes the busniess logic your application needs.

Developing a new framework is not a trivial or easy work at all. Even for a team is difficult to handle, so be extremely sure you need to create yet another one before starting.
Instead, use open source, well known solutions, so that bugs are likely to be triaged and fixed. There are many which are available even for commercial use. Just choose your favourite one: Symfony, Code Igniter or Kohana or whatever and start building your application on top.
As of IMDB, probably they are using a framework, but there is no way to tell what if any.

Related

What is missing in Objective-C that you don't want to program with it [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 5 years ago.
Improve this question
Now that Apple relaxed the restrictions on developer tools/programs, I wonder what tempts developers to other languages than Apple offers by default, Objective-C, which is quite fun to program with. What missing feautures makes you not to program with it but something else?
Lack of Objective-C expertise or a large/complex code base in another language would be among common reasons.
Cross-platform coding might well be another.
I haven't done any iPhone development yet, but generally speaking, here's a few reasons:
Cross-platform development
The other language suits your coding style better
The other language is a better tool for the job
You are comfortable in the other language and don't have the time / budget / motivation to learn Objective-C
Existing libraries / codebase
Specific tools you might want to use
Testing some concepts in Objective-C can sometimes be kind of tedious to set up. Sometimes you just want to see how a single method works or play around with an object's functionality to see how it works.
Setting up a new project is somewhat tedious, and it's not always feasible to incorporate the test code in to a new project.
In this case, I do one of two things:
Keep an empty project around specifically for testing things
Drop down to the Terminal and use irb (or PyObjC) to play with the objects in Ruby or Python.
In a nutshell, the thing that's missing is the ability to use Objective-C in an interpreted manner. You have to use another language (like Ruby or Python) to do this.
I recently wrote some networking code in Python, then had to translate it into Objective-C for use on the iPad. A typical line of clear Python would become five or ten lines of busy-work C. I just work faster in higher-level lanugages; the language puts up less resistance, requires fewer forms to be filled out.
I have ported a couple of tiny language interpreters (for my own use, not for App store distribution) to the iPhone. This allows me to write short snippets of code on the road, without having to carry my Mac, and run them locally. I don't know of any small Objective C interpreters, and the language is not really designed for interactive use.

Choosing the correct framework [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
When starting out on any project it could be seen as essential to pick an appropriate framework. I was wondering if you would point out any key questions that should be asked in order to aid the choice. I have looked at numerous sites and there doesn't seem to be any definative questions to ask before a choice is made.
I was wondering if, in any of your experience,s you have come across any key questions.
I gather one of the first is what are you developing? web app or desktop based
Any key questions would be a great help. This is a pretty general question as I am just looking for generic questions that would be asked before a choice is made.
Pick one you (or your team) already know.
Learning a new framework is a time consuming and expensive process that you don't want to be associated with a project. I would say the number one factor when selecting a framework/language is the existing knowledge base in your team.
[Obviously, this isn't very helpful if you don't currently know any, or the ones you do know aren't useful in the project's domain]
The best technology is the one you know. So ask a question - what technologies my team has experience in.
The main question you must ask is about stability. If you are developing an enterprise application wich sould be maintained for several years and should me stable, you should use mature and well tested frameworks. Something Java EE or .NET based for web applications. If your project is experimental, you can use experimental frameworks, technologies, languages etc.
Pick the one with good documentation. The quality of documentation gives you a clue how good the framework is.
A large user community is a plus, especially for opensource frameworks.
Ask yourself right from the start:
What are the things my application
will do, what are the ones it won't ever
do?
Choose a framework that makes it easy to accomplish the things you want from your application, care less for things that are extra. Don't worry, when you'll really need extra, you'll worry about looking then.
Who will use my application? What are
the numbers and needs of people that
will be the application's users?
You need a framework that scales well to the number of users you intend your app to handle and to their specific needs(collaboration, social interaction, ease of use, necessary tools, etc).
Is there a strong support
for the framework(from the developer or the community)?
Make sure you'll have who to turn to if you'll have questions or problems.
I usually try to find the framework that is the most popular. Have a look at a comparison of Javascript frameworks in Google Trends. It's pretty obvious that jQuery is the most popular by a large margin, so I'd lean towards using that.
It's not the only criteria, but more users means better documentation, testing, features, etc. Also, if you're new to an area of programming, then it usually pays to follow the wisdom of the crowd.
I would start by thinking about the pros and cons of frameworks in general. Based on those things that matter most in your situation, see which frameworks fit.
It's also helpful to think about the general features found in most frameworks of a platform (web application frameworks, for example). Decide which of those features are important to you, then investigate the frameworks that provide those features.

what constitutes the name Kit? [closed]

Closed. This question needs details or clarity. It is not currently accepting answers.
Want to improve this question? Add details and clarify the problem by editing this post.
Closed 5 years ago.
Improve this question
I'm a bit confused with the "kit" thing.
I'm a .Net guy moving toward linux and iPhone dev. I'm wondering if Kits are simply something like a dll you reference? or is it when you have a complete framework consisting of many parts?
can I call NUnit "TestKit"?
What "kits" are you referring to?
Things like WebKit (open source web page rendering engine spearheaded by Apple), UIKit (User Interface framework for iPhone development), and TuneKit (framework for building iTunes LP content) are all marketing terms used by Apple for various collections of technologies and tools.
from http://en.wiktionary.org/wiki/kit "A set of related parts, tools, clothing or other equipment, collected for some specific purpose."
A set of development tools or libraries can be called a kit. An SDK is a kit.
WebKit is a content engine, so it's not really a kit.
NUnit is a test framework, not a kit. If you ship it together with a Mocking framework you can call those together a kit. A software bundle is often also called a stack. They call LAMP a stack, not a kit.
Kit has no set meaning in Cocoa, it's kind of a suffix for frameworks that Apple likes to use. It has a bit of a connotation of being a compact, elegant, high level way to build whatever it lets you build. Occasionally it's used to distinguish a UI portion of a framework from a non-UI portion, which might have a framework starting in Core. Core is similarly mostly meaningless, but with hints of being more low level or non-UI. On the desktop Core at one point meant "shared between Cocoa and Carbon".
There is a TestKit framework! To me, the intended connotations of calling your framework
"TestKit" are as above. You intend this to be a compact, elegant way to do testing. You will not throw the kitchen sink at the problem, you will endeavor to find a way to solve all the problems people want solved in a minimal way.

Advantages & Disadvantages of DotNetNuke? [closed]

Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
If you have worked with DotNetNuke, what are advantages and disadvantages that you have come across? What are alternative Content Management Systems that you have used that you find are better or worst. I'm trying to get a feel of what Content Management System Frameworks people are using and the advantages and disadvantages of them.
Thanks,
XaiSoft
This post may help as it has covered some of this info!
DotNetNuke works well, and has a wide variety of addins that are available for purchase from various vendors. It is also open source which is nice, as it allows you to troubleshoot issues to a deeper level then if it was closed source.
We didn't spend a lot of time researching CMS systems but this past summer we couldn't find anything with the functionality of DotNetNuke which targets the .net framework. If your not tied to .net then there are a ton of options available.
DNN is very very dynamic in terms of functionality, features and security. There's is nothing like it. However there are a few drawbacks that i felt while using it.
The biggest drawback in my opinion is the response time of a DNN using sites. The code itself is very obsolete and you need to lock yourself and scour on each and every coding details before using DNN. One more is the URL dependency, if you need to change your domain name to another your old database will be of no use.
There are a lot of new promising CMS extension in Dot NET market and Sageframe, in my opinion, is the best of them. I have been using this extension for quite a time now and I am quite fascinated by its features though still in beta.
DotNetNuke is quite powerful. It's biggest advantage is the inline editing of site content, in my opinion. It's biggest disadvantage is that it is pretty resource intensive compared to other CMS systems.
Here's a comparison I wrote last month:
http://www.logicalvue.com/blog/2009/01/cms-shootout-dotnetnuke-vs-joomla-vs-wordpress/
The biggest disadvantage is the missing support for multiple languages.
Yes, you can install multiple languages but you can't write seperate content for each installed language...
It's not hard to write such a module yourself but the other problem is the URLs.
You can use the 'Human Friendly' option but yet again, this does not support multiple languages.
For instance /Products/tabid/57/language/en-US/Default.aspx becomes products.aspx but there isn't a possibility to include the language like this /en-US/products.aspx
I know there are 3th party tools like UrlMaster which covers this up but still I think this should be available in such a framework.
The biggest advantage is the ease of developing your own modules! If a functionality isn't available, you can write your own module without any problems!
.Net Nuke is not good for developing projects.
Microsoft is releasing lot of versiond and including lot of lauguages.
So how developers will learn all the things...
This is very bad for developers.....

Developing addins for World of Warcraft - Getting started? [closed]

Closed. This question needs to be more focused. It is not currently accepting answers.
Want to improve this question? Update the question so it focuses on one problem only by editing this post.
Closed 6 years ago.
Improve this question
As a long time World of Warcraft player, and a passionate developer I have decided that I would like to combine the two and set about developing some addins. Not only to improve my gameplay experience but as a great opportunity to learn something new.
Does anyone have any advice on how to go about starting out?
Is there an IDE one can use? How does one go about testing? Are there any ready made libraries available? Or would I get a better learning experience by ignoring the libraries and building from scratch? How do I oneshot Hogger?
Would love to hear your advice, experiences and views.
This article explains how to start pretty well.
Your first bookmark is possibly the US Interface Forum, especially the Stickies for that:
http://us.battle.net/wow/en/forum/1011693/
Then, grab some simple addons to learn how XML and LUA interacts. The WoWWiki HOWTO List is a good point here as well.
One important thing to keep in mind: World of Warcraft is available in many languages. If you have a EU Account, you got an excellent testing bed by simply downloading the language Packs for Spanish, German and French. If you're an US Guy, check if you can get the Latin America version. That way, you can test it against another language version.
Once you made 1 or 2 really small and simple addons just to learn how to use it, have a look at the various frameworks. WowAce is a popular one, but there are others.
Just keep one thing in mind: Making an Addon is work. Maintaining one is even more work. With each new Patch, there may be breaking changes, and the next Addon will surely cause a big Exodus of Addons, just like Patch 2.0.1 did.
Another useful tools you might like is WarcraftAddOnStudio which lets you make plugins in the visual studio environment.
I learned the art of add-ons primarily by looking at the code of Blizzard's UI. You can see that code by extracting the default UI or finding a copy of the default UI online. Add-on developers sometimes like to over-engineer their pet projects (who doesn't?), while Blizzard's code is usually pretty no-nonsense and straightforward. In addition, Programming in Lua is a pretty useful (if slightly out-of-date) reference for the actual Lua language.
The best way to start is with the book World of Warcraft Programming. It covers LUA, XML, WarcraftAddOnStudio and the WoW API. The book also has sections on best practices and avoiding common mistakes.