What factors drive you to use embedded scripting in your applications?


What factors drive you to use embedded scripting in your applications?



What factors do you weigh in your decision process when you select an embedded scripting, and can issues of configuration and variation be overcome purely with IOC and the Plugin pattern?

Many times the Strategy Pattern and Decorator Pattern are good way to tame variation in domain logic. The problem set I am faced with is that calculations and starting points of workflows will vary from through out the year based on different marketing campaigns, and not all data requirements and business rules are know until just before the campaign begins. Being a small shop we would like to have a solution where we can make configuration changes, test rigorously and yet not be forced to compile/link and re-deploy on a constant basis.




How to design for JPA in a non-Java EE web server (e.g. Tomcat)

1:



The data structure for the “order” property of an object in a list
Many times I have made internal data structures mutable through Python or Lua.


How do you handle Zend_Paginator?
Somtimes externalizing business logic into loadable modules.


A simple explanation of common design patterns for non-native English speakers
This makes your solution a reusable framework too that you can deploy to other clients cheaply.


Is the front controller responsible for deciding which controllers/modules to load?
It also make 'in the field' fixes quicker (just update a text file) and gives clients freedom to modify their own dynamic data..
Get list of changed fields in Entity from NHibernate Session
If you can safely expose the API without breaking things ...


Forcing interface implementations to implement hierarchy in c#
why not?.
Javascript functions
My two concerns are:.
  1. Can I externalize logic that is specific to a client? or that might be tailored later?
  2. Can I do this whilst meeting performance and intellectual property constraints?
A clean framework == Reusable code and a platform you can quickly modify to solve problems of the same ilk without recoding..


2:


I've used this technique in 2 scenarios:.
  1. I want to provide some facility for customers/clients to be able to provide some (limited) customisation themselves.

    e.g.

    to colour a chart red if a value exceeds 50, so allowing them to type a short script like "if val > limit then 'red'" etc.

    You have to be careful to limit what the user can program, however (for obvious reasons)
  2. When I need some customisation of the software in the field (i.e.

    recompilation isn't an option) and I know I'll need a little more than being able to turn components on/off.

    So I'll implement some mechanism where the application configures itself via scriptable components
(I'm mainly Java-based, so I'm using the Java 6 embedded scripting plus a variety of languages to achieve the above, depending on the focus).



82 out of 100 based on 72 user ratings 1222 reviews