Advantage and Disadvantage of J2ME? - java-me

I would like a list of advantages/disadvantages of J2ME, mainly MIDP. I figured that this would be the best place to ask since there seems to be a wealth of knowledge in this forum.
Currently I have the following advantages in J2ME.,
* Rich Clients
* Offline use
* Consistency of applications across platforms
* Reuse of existing code base
I don't really have a list of disadvantages although I am sure that there are plenty. Any views on either advantages/disadvantages[ie., Limitations of J2ME] would be welcome.
Thanks in advance,
Tilsan the Fighter..

Noone of them. Main disadvantage is paranoidal security model. For instance read here.

We cannot able to access the database directly.For database we should connect to intermediate.From that intermediate we should access the database.From that intermediate the result is return the j2me.Here the intermediate is any one of the following such as servlet,etc.

As barmaley said and the link given. LWUIT allows you to create really nice J2ME apps, but really, J2ME is in it's death throws. Unless you have a specific requirement to use J2ME now, you'd be better off targeting Android.

Related

General questions about JHipster

Sorry if this is not a place to ask these questions. But I just want to know if...
Can JHipster go large scale applications?
Is it possible to minimize the generation of codes especially with the UI part?
Can I extend some RestController class that has been generated to. (Like a custom model class where in I get base64 string to write in a file)
Sorry again for asking, its just that I'm building a startup business and I want to know if these are all possible. I can't help but to get over excited on JHipster and I'm literally crossing my fingers now!
Thanks guys!
Three questions in one, in fact!
It depends of what you call "large scale". We have users with several hundreds of tables, so that's what I would qualify as "large". Other people use a "micro service" approach, with several JHipster apps working together, and that's what I'd recommend. Our Gatling tests (as well as feedback from users) also show we are able to sustain a large amount of HTTP requests, compared to "competing" stacks such as JBoss or Play! (but both of them don't have default settings oriented towards production, like our "prod" profile - for example they don't have a 2nd level cache enabled by default - so that's normal we are much more performant out-of-the-box)
If you don't like the UI part you can remove it, but in that case I would recommend not using JHipster -> this is the whole idea, otherwise just use a bona fide Spring Boot, or DropWizard
It's just a generator, so yes you can extend or modify anything that was generated
yes you can, i have used it for one educational board who have 20housand+ js file, and also used it for 3 ministry

Security in Play 2.2.x

I'm trying to secure my play application but I have no idea where to start. In play tutorial I have not found any chapter about that topic. As far as I see security topic is changing between play versions. So what are You guys using to secure Yours applications.
I'm new in Play so please forgive me if I'm asking obvious questions.
Edit:
Ok, maby question was't clear enough(I'm really sorry about that). When talking about security I mean that I need something to deal with users credentials and tool which allows me to restrict access to some pages and eventually to some rest actions in my application.
Edit2:
I'll try deadbolt2 now and we'll see how does it works. But I still encurage You guys to share Your knowledge about Play security with others:)
The documentation seems to still be a bit lacklustre on this topic, but essentially, authentication/authorisation functionality is usually performed using Action composition, which is the basis of reusable controller code in Play. There an example here (also linked from the docs that should help give you the general idea.)
Action composition in Play 2.2.x is done using ActionBuilders. These take a block which accepts a request and returns a Future[SimpleResult]. This allows the action builder to either execute the given block, or return a different Future[SimpleResult] (say, an Unauthorized in the case that a user's credentials did not check out.)
In our app we use the Play2-auth module for handling authentication with session cookies. This has (just) been updated to work with Play 2.2.x but uses a slightly different mechanism for action composition (stackable controllers.) You might be best off working out how the precise functionality you need can be accomplished just using the native framework tools before adding a dependency to it.
I agree with the other answers but just add that I use securesocial to integrate with other auth providers (google, FB, etc...), so I don't have to do auth myself. It's quite easy to get up and running.
https://github.com/jaliss/securesocial
Access control, security, etc. is a very wide topic, because it means very different things depending on context. This may be one of the reasons why Play has little documentation for it, which puzzled me at the beginning as well.
Play2 has some security helpers, namely it's the Authenticated method, for some insights on how to use it, check the comments in the source code. Its a simple method that you could implement yourself, and most do. It, essentially, just proposes a structure for where to place your methods that would check if request is authenticated and what to do if it's not.
Play2 also has some cryptography logic, which is used for signing cookies.
That's about it, you don't have any more pre-built security structures, but that's a good thing, because you don't want the framework making decisions like that for you, if it doesn't know in what context it will be used.
What is essential is to go and research how attacks relevant to your application are carried out, best practices and so on. I recommend going to OWASP, particularly the OWASP Cheat Sheets. If the list of Cheat Sheets seems intimidating start with the OWASP Top Ten Cheat Sheet. Don't mind the large volume of information, it's very useful knowledge.

Development Platform for Small application

I will soon be developing an application to log and priorities worker shifts. It only needs to be small, and simple, but I am wondering what framework to use. All that needs to happen is boxes with names are in 3 lists, and the user can switch these around at will. It must log the times, which I will need access to in real time.
Im new to application development of this sort, and would like any suggestions. I have time to learn new technologies / languages.
Portability / device independence would also be useful. Should I consider a Web Application in Javascript? or something more like Python.
Thanks.
Even if your application is going to be simple that does not mean that whole system will be simple too. I can imagine that your app will serve only as a front end to something much bigger. If that is a case and you really have freedom to choose what language you will develop your app with consider choosing something that you will feel comfortable to work with. But before you will make your decision I would go to whoever gave you that task and try to get as much information about it as you can because expected features can help in choosing technology.
First of all, it seems that it is up to you to decide if it should be web or desktop app. In my opinion it is completely wrong situation. You should get clear requirements on what kind of application customer expects and in what environment it should work. And I would not move a finger towards a code before somebody gave me that information. You write that portability and device independence would be useful but is it actual requirement or you just think it would be nice feature to deliver?
EDITED (to answer a question in comment)
Probably there is as much possible solutions as people that would answer you so in the end you will have to make your own choices.
One way of doing it (considering that you want to learn something new and have a challenge :) would be implement WCF service that would act as a data provider from your database (so every GetUsers(), GetVacationDays() methods would be in it) and it would take care of some business logic (for example CalculateMaxValidWorkingTime() or whatever). That service would be a real power horse of your system. Since you don't have clear requirement whether it should be desktop or web app you could satisfy both possibilities by creating thin clients that would communicate with your service and they would be just a pretty front ends. And if you keep in mind that you can consume webservices practically with everything from C++ to .NET (C#/VB) to Javascript to Python to PHP after you done with service you would not be constrained with one particular technology/language.
Regarding databases I won't advice because personally I hate dealing with them and it always was somebody else's task to provide me with pretty API :)

What is the most efficient way to mock a user flow in a RESTful application?

How can I communicate in a very simple and effective way the path the user takes through my application?
I'm currently working in a Ruby and Rails environment, so I tend to visualize my application in terms of RESTful URIs. So for example, if I want my users to sign up, I could match a new route called /users/new. The thing is, I would like to see beyond that specific action, and visualize how many pages or forms does it take to create an account and some business logic associated with the process in general. In other words, I'd like to see a mix of a workflow diagram and some implementation details (at an interface level).
I was thinking in showing mockup pictures wrapped in boxes, and relate them through arrows with their corresponding GET, POST, PUT, DELETE methods and URIs attached to them. I think it is a good idea, but I haven't seen examples yet that inspire me.
In your experience, what helps you see the big picture? Balsamiq mockups allow to define links and navigate through the app, but it doesn't help to conceptualize.
Have you thought of using a mind-map? You could try the free FreeMind
If you stick with UML, you could consider an Activity diagram.
I think you're on the right path. Showing different screens with possible combinations of users' transactions between them is a good technique. Basically you would be able to show user's flow through your application and stress out decisions a user will make on the way.
The good example for it was presented here http://vimeo.com/43869717
This technique called Storyboarding. You should be able to find some examples. But the one I mentioned above is one of the best Storyboarding techniques. I use it all the time to show the big picture and present application workflow from user perspective to my team.

is there any replacement of Access? [closed]

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 8 years ago.
Improve this question
I am a programmer, and my father uses Access to collect the patients information (my father is a doctor),
He wants me to teach him how to use it.
I don't like Access (I'm a linux guy), and I cannot find any replacement of it. Do you guys know of any? (it must be easy enough for my father to use)
Maybe you need to be a bit more pragmatic about this.
I'm not a fan of Access either, but if your father already understands it and he already has the system in place, you need to ask the question, why change? If it aint broke don't try to fix it.
You may find that a few simple changes in the existing system gives your father everything he needs, it'll save you a whole lot of time and means you don't need to retrain your father.
What about OpenOffice - Base?
Your father wants you to teach him how to use access but you're a linux guy and don't like access.
Access isn't the problem here
I don't think you and your father a good fit for this.
Get someone else to teach him how to use Access
Access is not always the monster it is made out to be. A poorly coded database in any application or language is a poorly coded database. Access' dominance of the market at a critical time led to more people coming across a higher ratio of poorly designed databases.
There's a great deal of support out there for Access users and programmers too. I particularly like Access World Forums. As ilivewithian said, if you're not happy telling him about it, get someone else to.
If however you are keen to take on the role of tutor to your dad (and I can see the attraction - a chance to give something back, perhaps), then I would suggest a web-based database interface. Unlike Oli, I have no experience of Django, but I would recommend Dabble or blist. (Blist is particularly good at handling images, Dabble is better at flexible report formats, though neither is as good at reports as Access, IMHO).
I think the natural successor to Access is a simple web-interface database system.
They're simple enough to create in a billion different ways but I would seriously suggest trying Django (because you'll find its admin area does 90% of the real work for you in this case)
FileMaker Inc. is subsidiary of Apple. It runs on Mac OS X as well as Windows (whereas MS Access only runs on Windows). Many people claim FileMaker is easier to use than MS Access. Sounds like FileMaker might be the perfect solution for you! (although I do agree with ilivewithian)
There's also Sun's counterpart to MS Access in OpenOffice/StarOffice called BASE (someone already mentioned this), which is also cross-platform compatible.
Rather than develop his own record keeping application he would probably be better off purchasing an already developed system from one of the numerous medical record system vendors. He'll get a better application and have people he can call on for support. Plus there are all of the legal issues about medical record storage and access. A vendor will have worked out those problems already.
That having been said there are many other file based databased systems out there: http://www.google.com/search?q=file+based+database
I haven't used any of them so I can't make a recommendation.
Of course, there's always the various enterprise databases (Oracle, MySQL, SQL Server, etc...) as well. Of those SQL Server is probably the easiest to learn for a newbie. Since there's no 64 bit version of Access I'm starting to see people replace Access with SQL Server Express (free!) for small applications that need to run on 64 bit windows.
I am using Viravis now for more than 6 months in a multi-language organization with several projects and I find it very good. It's not only easy to build (I am a beginner) but they give also very good support!
Gambas ist a very good alternative for Access if one used Access as a database frontend and programmed with VBA (Visual Basic fro Applications). One can reuse a lot of code written for Access and create forms and reports easily.
So for a VB or VBA programmer, who wants to use the own knowledge under Linux, Gambas is a wonderful solution.
No first hand experience, but you can try out OpenOffic.org Database. Or, you may teach your Dad to use the MySQL GUI tool.
Getting the database structure is the toughest part for most. Creating a simple form or report is not that tough either. As far as being a users (data entry, reports, etc.) is probably easier than most applications. You also have all the searching and sorting capabilities; why reinvent the wheel?
Viravis may be an online alternative to the access database. You should better to check it out if it fit your need.
For Windows and simple data, I would use Excel, so I think Open Office should be ok. Unless your father has a hospital, it will probably fit... Or you can do some programming, take embedded database like Firebird and write something on your own, say - in Java?

Resources